Taco, thanks so much! I really appreciate the wonderful ConTeXt community without whose help I would never have been able to even get started. On Jan 23, 2005, at 10:33 AM, Taco Hoekwater wrote:
This, however, will not work: \definefont[Gf][\MyFont sa \MyScale] Both work for me. Unless I misunderstood what it is supposed to do.
\Gf is later used in the macros to define the Greek font. When defined with the \definebodyfont alternative, this works; when I try the \definefont, I get this error message: ! Undefined control sequence. <argument> ...else \getvalue {MyFont} sa \MyScale \@@@instring \expanded ...\long \xdef \@@expanded {\noexpand #1 }\@@expanded \p!doifinstringelse ...{\pp!doifinstringelse #2#1} @@\war \dodoifinstringelse ...tringelse \@@@instring {#1} \@EA \firstoftwoarguments ... \dodefinefont ...2][#3]->\doifinstringelse { }{#2} {\ifthirdargument \unexpa... <to be read again> \par l.19 ? It looks like \MyFont doesn't get expanded when the \definefont command is read, but this is an area of TeX that I find especially opaque...
Rude, but effective:
\define\koppa {{\Gf \char37}}
Yes, this works and is just what I want. Great!
Greetings, Taco
---------- \def\setupgreek#1[#2]{% \getparameters[GG][Scale=,Font=,#2] \edef\MyScale{\GGScale}% \processaction[\GGFont] [ SomeFont1=>\def\MyFont{cmbx10}, SomeFont2=>\def\MyFont{cmtt10}]% } \setupgreek[Scale=5,Font=SomeFont1]
\definebodyfont[4pt,5pt,6pt,7pt,8pt,9pt,10pt,10.5pt,11pt,12pt,14pt,14.4 pt,16pt,18pt,20pt,22pt][rm][rm=\getvalue{MyFont} sa \MyScale]
\definefont[Gf][\getvalue{MyFont} sa \MyScale]
\starttext Beo {\switchtobodyfont[20pt]Beolarge} Beo {\Gf Beolarge} \stoptext
Thanks a lot, Taco! Best Thomas