[NTG-context] again: new module mechanism

Thomas A. Schmitz thomas.schmitz at uni-bonn.de
Mon Apr 10 11:13:26 CEST 2006


All, and esp. Hans, Taco,

I'm still experimenting with the new moduleparameter mechanism. One  
thing I can't get to work is using it in a \definefont. Here's my  
minimal example:

\startmodule[mymod]

\unprotect

\setupmodule[font=Times]

\definefontsynonym[Times][ec-TimesNewRoman] % valid name

\definefont[myfont][\currentmoduleparameter{font}]

\message{The myfont is \currentmoduleparameter{font}}

\protect
\stopmodule
\endinput

\usemodule[mymod][font=Times]

\starttext

Hello world!

\myfont and hello again

\purefontname\font

\stoptext

In the log file, I get:

(./t-mymod.tex The myfont is Times)

So the definefont should work (if I define \definefont[myfont] 
[Times], I get the expected output), but the file fails to compile,  
with this error:

! Missing \endcsname inserted.
<to be read again>
                    \@@md:unknown:font
\truefontname #1->\ifcsname \??ff \fontclass #1
                                                \endcsname \@EA  
\truefontname...

\donoparsefontspec ...\truefontname \somefontname
                                                   }\ifx \fontfile \s! 
unknown...

\dododefinefont ...e \fontbody \parsefontspec {#2}
                                                   \rawfontidentifier  
\let \l...

\redodefinefont #1#2#3->\dododefinefont {#1}{#2}
                                                 \doifsetupselse {#3}  
{\setup...
l.7 \myfont
             and hello again
?
Process aborted

What am I missing?

Best

Thomas


More information about the ntg-context mailing list