|
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
--
|