Re: [dev-context] kpathsea and XeTeX
Taco:
you should check the value of the "mktextfm" feature. It seems to be on in gwTeX.
Thanks a lot for the pointer. That was an enormous speedup :) But that should probably not be the ultimate solution? Hans:
- check if the file databases are there (ls-r)
Yes.
- maybe xetex has troubles finding the fonts (system fonts?)
No, it doesn't seem so.
- maybe try to enable KPSE_DEBUG (or so) and see what lookups take place
Where can I set that flag when compiling a ConTeXt file?
This is probably unrelated to context but more to some setup problem. Keep in mind that minimals run faster anyway (upto a few seconds)
The problem is not related to the overall speed. Now I remember that Jonathan has warned me that kpathsea will try to generate a font if it's not found. That doesn't happen on standalone, but it does on "standard TeXLive". The first half of the problem has been solved by prepending file: to a bunch of definitions: \starttypescript [serif] [palatino,pagella] \definefontsynonym [Palatino] [file:texgyrepagella-regular] [features=default] \definefontsynonym [Palatino-Italic] [file:texgyrepagella-italic] [features=default] \definefontsynonym [Palatino-Bold] [file:texgyrepagella-bold] [features=default] \definefontsynonym [Palatino-BoldItalic] [file:texgyrepagella-bolditalic] [features=default] \definefontsynonym [Palatino-Caps] [file:texgyrepagella-regular] [features=smallcaps] \definefontsynonym [Palatino-Slanted] [Palatino-Italic] \definefontsynonym [Palatino-BoldSlanted] [Palatino-BoldItalic] \stoptypescript and the second one (without that setting int exmf.cnf) still remains: ConTeXt constantly complains about missing lmtypewriter10-regular (several times per ConTeXt run - which is really annoying and slowing it down quite a bit): kpathsea: Running mktextfm lmtypewriter10-regular mktextfm: Running mf-nowin -progname=mf \mode:=ljfour; mag:=1; nonstopmode; input lmtypewriter10-regular This is METAFONT, Version 2.71828 (Web2C 7.5.6) kpathsea: Running mktexmf lmtypewriter10-regular ! I can't find file `lmtypewriter10-regular'. <*> ...; nonstopmode; input lmtypewriter10-regular Please type another input file name ! Emergency stop. <*> ...; nonstopmode; input lmtypewriter10-regular Transcript written on mfput.log. grep: lmtypewriter10-regular.log: No such file or directory mktextfm: `mf-nowin -progname=mf \mode:=ljfour; mag:=1; nonstopmode; input lmtypewriter10-regular' failed to make lmtypewriter10-regular.tfm. fonts : fails 1b: "lmtypewriter10-regular" (nullfont) fonts : succeeds 1c: "[lmtypewriter10-regular]" ("[lmtypewriter10-reg ular]" at 12.0pt) I'm sending a small patch which solves the first half of the problem, but please check it before applying (diff) to make sure that I had the latest version. It would be nice to solve that with lmtypewriter, but I still remember all the problems from one month ago, so I'm clueless ... Mojca
Mojca Miklavec wrote:
Taco:
you should check the value of the "mktextfm" feature. It seems to be on in gwTeX.
Thanks a lot for the pointer. That was an enormous speedup :) But that should probably not be the ultimate solution?
There is no other way to get rid of them. It is impossible to control the execution of those scripts (mktextfm, mktexmf, mktexfmt, mktexpk) from C code without patching kpathsea. I believe all of those scripts should be off on a modern installation.
and the second one (without that setting int exmf.cnf) still remains: ConTeXt constantly complains about missing lmtypewriter10-regular (several times per ConTeXt run - which is really annoying and slowing it down quite a bit):
kpathsea: Running mktextfm lmtypewriter10-regular mktextfm: Running mf-nowin -progname=mf \mode:=ljfour; mag:=1; nonstopmode; input lmtypewriter10-regular This is METAFONT, Version 2.71828 (Web2C 7.5.6)
Was the metapost font not changed to ec-lmtt10 ? I thought we had agreed on that (the above message is from metapost, running metafont through mktextfm). Best wishes, Taco
On 10/19/07, Taco Hoekwater wrote:
Mojca Miklavec wrote:
Taco:
you should check the value of the "mktextfm" feature. It seems to be on in gwTeX.
Thanks a lot for the pointer. That was an enormous speedup :) But that should probably not be the ultimate solution?
There is no other way to get rid of them. It is impossible to control the execution of those scripts (mktextfm, mktexmf, mktexfmt, mktexpk) from C code without patching kpathsea.
Do you mean that kpathsea should support something like "please tell me if that font is available, but do not try to run mktex... even if that one is on by default"? In any case, I've set that option to zero and my system is slightly broken for some unknown reason today, but I will get over it somehow :)
I believe all of those scripts should be off on a modern installation.
I would agree, but as long as there are metafont fonts residing on a system and people are using them ... If I use \usepackage[T1]{fontenc}, I still get bitmap fonts. *That* one should be changed. Rendering of such documents on Mac's screen is almost unreadable. (I even get bitmap integers inside math with ConTeXt, but I didn't manage to figure out yet whose fault that is.) How is it possible that MikTeX has managed to solve that issue, but TeX Live not? (Or perhaps I should check it once more on some windows machine.)
and the second one (without that setting int exmf.cnf) still remains: ConTeXt constantly complains about missing lmtypewriter10-regular (several times per ConTeXt run - which is really annoying and slowing it down quite a bit):
kpathsea: Running mktextfm lmtypewriter10-regular mktextfm: Running mf-nowin -progname=mf \mode:=ljfour; mag:=1; nonstopmode; input lmtypewriter10-regular This is METAFONT, Version 2.71828 (Web2C 7.5.6)
Was the metapost font not changed to ec-lmtt10 ? I thought we had agreed on that (the above message is from metapost, running metafont through mktextfm).
Hans first changed it when I "compalined" that XeTeX should not load ec-whatever and texnansi-whatever map files any more. It then turned out that metapost still needs them, so it would still be necessary to add an additional font (texnansi-lmtt10, I guess - probably because it's "almost-ascii-compatible"), but I don't know if that happened. I wanted to test now, but apparently I just broke something (no idea what), so I need to start from scratch (delete everything, install texlive again in the worst case). I updated xdvipdfmx, but even reverting to the old version doesn't help any more. (But that is my own problem of course.) Mojca fonts : resetting map file list fonts : using map file: original-base fonts : using map file: texnansi-base fonts : using map file: ec-base fonts : using map file: qx-base fonts : using map file: t5-base fonts : using map file: 8r-base fonts : using map file: original-ams-base fonts : using map file: original-ams-euler fonts : using map file: original-public-lm [1.1] systems : end file a at line 12 system : cont-err loaded (/usr/local/gwTeX/texmf.pkgs/tex/context/base/cont-err.tex systems : no file 'cont-sys.tex', using 'cont-sys.rme' instead ) ) (see the transcript file for additional information) stdin -> a.pdf [1 ** WARNING ** Couldn't open font map file "original-base.map". ** WARNING ** Interpreting special command mapfile (pdf:) failed. ** WARNING ** >> at page="1" position="(1.09453e-05, -1.5411e-05)" (in PDF) ** WARNING ** >> xxx "pdf:mapfile +original-base.map" ** WARNING ** Couldn't open font map file "texnansi-base.map". ** WARNING ** Interpreting special command mapfile (pdf:) failed. ** WARNING ** >> at page="1" position="(1.09453e-05, -1.5411e-05)" (in PDF) ** WARNING ** >> xxx "pdf:mapfile +texnansi-base.map" ** WARNING ** Couldn't open font map file "ec-base.map". ** WARNING ** Interpreting special command mapfile (pdf:) failed. ** WARNING ** >> at page="1" position="(1.09453e-05, -1.5411e-05)" (in PDF) ** WARNING ** >> xxx "pdf:mapfile +ec-base.map" ** WARNING ** Couldn't open font map file "qx-base.map". ** WARNING ** Interpreting special command mapfile (pdf:) failed. ** WARNING ** >> at page="1" position="(1.09453e-05, -1.5411e-05)" (in PDF) ** WARNING ** >> xxx "pdf:mapfile +qx-base.map"
Mojca Miklavec wrote:
On 10/19/07, Taco Hoekwater wrote:
Mojca Miklavec wrote:
Taco:
you should check the value of the "mktextfm" feature. It seems to be on in gwTeX. Thanks a lot for the pointer. That was an enormous speedup :) But that should probably not be the ultimate solution? There is no other way to get rid of them. It is impossible to control the execution of those scripts (mktextfm, mktexmf, mktexfmt, mktexpk) from C code without patching kpathsea.
Do you mean that kpathsea should support something like "please tell me if that font is available, but do not try to run mktex... even if that one is on by default"?
Something like that, yes.
In any case, I've set that option to zero and my system is slightly broken for some unknown reason today, but I will get over it somehow :)
I believe all of those scripts should be off on a modern installation.
I would agree, but as long as there are metafont fonts residing on a system and people are using them ... If I use \usepackage[T1]{fontenc}, I still get bitmap fonts. *That* one should be changed. Rendering of such documents on Mac's screen is almost unreadable.
The one follows from the other. mktextfm only makes sense in an environment that uses bitmap fonts.
(I even get bitmap integers inside math with ConTeXt, but I didn't manage to figure out yet whose fault that is.)
How is it possible that MikTeX has managed to solve that issue, but TeX Live not? (Or perhaps I should check it once more on some windows machine.)
You are not really using "texlive2007". Your installation is "gwTeX, based on texlive". I suspect there may be a difference in setup settings.
Hans first changed it when I "compalined" that XeTeX should not load ec-whatever and texnansi-whatever map files any more. It then turned out that metapost still needs them, so it would still be necessary to add an additional font (texnansi-lmtt10, I guess - probably because it's "almost-ascii-compatible"), but I don't know if that happened.
Apparently not. Best wishes, Taco
participants (2)
-
Mojca Miklavec
-
Taco Hoekwater