I did some more experiments. In the macro below delete ABC and replace D by ! then the output of the test will match. example1 is made with the type-imp-euler.mkiv as given below. I removed every space in it, ended every ] with a % and commented [texgyre] out. In the log can be seen that --as far as I am aware-- just that euler file is loaded and processed. For further testing I added a blank line before the starttypescript[euler]% line and the example2 results. There is indeed an effect from the intervening newline. Also removed space from type-imp-latinmodern.mkiv and type-imp-lmnames.mkiv. But I still cannot explain where the remaining spaces do come from. There are a few places in type-ini.mkvi with space after an } in a macro, but I have patched these in my system. Any idea how further? More from \loadfontgoodies[lm]? To what file does that resolve? I am willing to clean up the existing typescript files and sending them where they can be incorporated. But if that is not al… Hans van der Meer Minimal Tex code: \setuppapersize[A5][A5] %\usetypescriptfile[euler]\usetypescript[euler] \tracetypescriptstrue \setupbodyfont[lmodern,10pt] \starttext Before\writestatus{++++++++}{}\switchtobodyfont[euler,10pt]\writestatus{--------}{}Fontswitch\stoptext Sample from type-imp-euler.mkiv %\loadtypescriptfile[texgyre]% \starttypescriptcollection[pagella-euler]% \starttypescript[\s!math][euler]% \definefontsynonym[EulerMath][\s!file:euler.otf]% \stoptypescript \starttypescript[\s!math][euler][\s!name]% Relevant part of the log: ++++++++ > fonts > request: [euler] [] [] fonts > auto load typescript file 1: [euler] fonts > request: [euler] [] [] (/Users/hansm/TeX/texmf/tex/context/base/type-imp-euler.mkiv) fonts > match: [euler] fonts > define: [euler] [rm] [serif] [euler] fonts > request: [serif] [euler] [name] fonts > match: [serif] [euler] [name] fonts > request: [serif] [default] [size] fonts > match: [serif] [default] [size] fonts > define: [euler] [tt] [mono] [modern] fonts > request: [mono] [modern] [name] fonts > match: [mono] [modern,latin-modern-designsize,latin-modern] [name] fonts > match: [mono] [modern,latin-modern,modern-variable,latin-modern-variable,modern-condensed,latin-modern-condensed] fonts > request: [mono] [default] [size] fonts > match: [mono] [default] [size] fonts > define: [euler] [mm] [math] [euler] fonts > request: [math] [euler] [name] fonts > match: [math] [euler] fonts > match: [math] [euler] [name] fonts > request: [math] [default] [size] fonts > match: [math] [default] [size] -------- [cid:70BCE0AE-8EE4-4E82-B545-913CB0DE816F@fritz.box] > [cid:58DBF4D7-539A-4FE8-A799-2BEAED31F7DE@fritz.box] On 3 May 2013, at 9:43 AM, Wolfgang Schuster > wrote: Am 03.05.2013 um 09:34 schrieb "Meer, H. van der" >: There is more to it then a preference for \crlf, typescript loading introduces a lot of spurious white, that not always can be made to disappear. I tracked it down to a macro in type-ini.mkvi: \def\font_typescript_process_typescript_file_and_store {*\expandafter\let\expandafter\t_font_typescripts\csname\??typescriptfiles\currenttypefile\endcsname A\ifx\t_font_typescripts\relax B\font_typescript_process_typescript_store_indeed C\fi D\the\t_font_typescripts} The ABCD*'s were added to see what happens. See the screen shot from one of my tests (
results in \crlf but does not sit between text and fontswitch \switchtobodyfont). My guess is that the token register \t_font_typescripts is the source of the spaces, but I am not further than that. I have already mailed Hans Hagen about these findings. The spaces in the output come from the line ending after the \definefontsynonym entry in the typescript and extra line in your other example from the empty lines between the typescript blocks and not from the macro above. \starttext A\crlf B\crlf \stoptext Wolfgang