From: LUK S. <shu...@po...> - 2003-11-07 07:50:29
|
John Hunter wrote: >>>>>>"LUK" == LUK ShunTim <shu...@po...> writes: > > > H:\00work\00cvs\matplotlib\matplotlib\examples>python subplot_demo.py -dPS > ['E:\\Py23\\share\\matplotlib', 'E', '\\Py23e\\share\\matplotlib'] > > Oh, I see the bug. The reason the lines are there that you commented > out is to allow you to specify multiple font dirs in your path, as in > Yes, the previous version caught the ":" in the drive letter specification. > set AFMPATH = c:\somepath\fonts;e:\some\other\path\fonts > > But I wasn't properly doing a platform independent path split. > > The code should read > > def _get_afm_filenames(self): > paths = [os.path.join(distutils.sysconfig.PREFIX, 'share', 'matplotlib')] > if os.environ.has_key('AFMPATH'): > afmpath = os.environ['AFMPATH'] > paths.extend(afmpath.split(os.pathsep)) > > fnames = [fname for fname in get_recursive_filelist(paths) > if fname.lower().find('.afm')>0 and > os.path.exists(fname)] > > return fnames > Yes, it works. I had thought of testing for "if OS == win" sort of stuff instead of testing for the presence of ";" or ":". But it appears that Python has the foresight to provide os.pathsep. I learnt a bit more and love Python a bit more. :-) > > Thanks for helping me diagnose it. Please let me know if the above > works on your system! > > John Hunter > You deserve much thanks for developing such a nice package. An afterthought: perhaps an EPS backend instead of/additional to a PS backend would be more convenient for inclusion into publications. I know very little about postscript programming so I don't know what's the effort involved, though. Best regards, ST -- |