This might be interesting. The example I gave before was now typeset with type-imp-euler.mkiv cannibalized to \endinput in the very first line. Then there are no spurious spaces and 5 executions of the recursive loop from \t_font_typescripts.
Thus, even though in type-imp-euler.mkiv all empty lines were removed, all intermediate spaces removed, all macros ended in ]% en texgyre not loaded, there is still spurious space. From the log I see that there are requests for [mono][modern] etc.

In order to locate these I have reduced the euler file to one define:
\starttypescript[euler]%
\definetypeface[euler][\s!mm][\s!math][euler][\s!default]%
\quittypescriptscanning
\stoptypescript

Now I get one  or possibly two spurious spaces. But I cannot easily find which typescript file is involved. Do you know this? Exerpt from 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] [mm] [math] [euler]
fonts           > request: [math] [euler] [name]
fonts           > auto load typescript file 2: [euler]
fonts           > request: [math] [euler] [name]
fonts           > request: [math] [default] [size]
fonts           > match: [math] [default] [size]
fonts           > defining > font with asked name 'unknown' is not found using lookup 'file'
fonts           > defining > unknown font 'unknown', loading aborted
fonts           > defining > unable to define 'unknown' as 'euler-10pt-mm-mb--3'
fonts           > defining > font with asked name 'unknown' is not found using lookup 'file'
fonts           > defining > unknown font 'unknown', loading aborted
fonts           > defining > unable to define 'unknown' as 'euler-10pt-mm-mb--2'
fonts           > defining > font with asked name 'unknown' is not found using lookup 'file'
fonts           > defining > unknown font 'unknown', loading aborted
fonts           > defining > unable to define 'unknown' as 'euler-10pt-mm-mb--1'
--------        > 


By the way. Is it correct that alone \definetypeface, \definefontsynonym, \starttypescriptcollection must be closed by ]% while for example \starttypescript[] seems to do no harm?
 
Hans van der Meer



On 3 May 2013, at 1:06 PM, "Meer, H. van der" <H.vanderMeer@uva.nl> wrote:


On 3 May 2013, at 12:28 PM, Wolfgang Schuster <schuster.wolfgang@gmail.com>
wrote:
Do you mean the missing % after \doifsomething etc.? These lines don’t need a % because TeX gobbles the spaces between the arguments.

I wasn't aware of that, but will remember.

Any idea how further? More from \loadfontgoodies[lm]? To what file does that resolve?

The commands loads lm.lfg


The somewhat simpleminded idea of adding \ignorespaces at the end of the \definetypeface macro and friends, will not work I am afraid.
Is there a possibilty to remove all whitespace from the tokens in \t_font_typescripts or prevent them from entering? Perhaps in the lua end?
Or is it possible to assign to all whitespace characters (space, tab, newline) a category code 9 when reading/processing the typescript definitions?

Hans van der Meer