Oh dear, thanks so much! This does it, and I'm so impressed what you can do in five minutes - absolutely amazing! Plus, it's mindboggling to see that all of this can be achieved within ConTeXt, without recourse to low level stuff. One day, when life is less hectic than now, I'll write you a long letter describing my admiration for you, Hans. Sometimes I feel like we Context-users are like the Apple people in the TeX world, and you're our Steve Jobs. Everything is so much more powerful, elegant, sleek, esthetic, you name it... Well, whatever, I will try and finish my work on this stuff and then I would love to share it with anbody who might be interested. Thanks, and all best Thomas On Jan 24, 2005, at 7:03 PM, Hans Hagen wrote:
Thomas A.Schmitz wrote:
If anybody can spare five minutes, I append what I have got so far; maybe I'm overlooking something obvious. Sorry for the lengthy post and for taking your time!
hm, this is a ll i can do in five minutes:
- just use the fontname remapper instead of processaction and intermediate vars - use getvariables instead of interface specific getparameters - end the par inside the start/stopgreek - no low level hacking needed
\starttext
\setvariables[Greek][scale=1,font=Kadmos]
\definefontsynonym[Oxonia] [greeoxon] \definefontsynonym[Ibycus] [fibr] \definefontsynonym[Bosporos][bosporos] \definefontsynonym[Gentium] [gentiumgr] \definefontsynonym[Kadmos] [kadmo] \definefontsynonym[Leipzig] [grbl] \definefontsynonym[Teubner] [teubnerc]
% \definefont[Gf][\getvariable{Greek}{font} sa \getvariable{Greek}{scale}]
\definebodyfont [4pt,5pt,6pt,7pt,8pt,9pt,10pt,10.5pt,11pt,12pt, 14pt,14.4pt,16pt,18pt,20pt,22pt] [rm] [Gf=\getvariable{Greek}{font} sa \getvariable{Greek}{scale}]
\def\enablegreek {\language[greek]% \catcode`~=\other \catcode`|=\other \catcode`'=\other}
\def\startgreek{\par\begingroup\Gf\enablegreek} \def\stopgreek {\par\endgroup}
\def\localgreek{\groupedcommand{\Gf\enablegreek}\donothing}
\define\sampi {{\Gf \char 34}} \define\digamma{{\Gf \char 35}} \define\stigma {{\Gf \char 36}} \define\koppa {{\Gf \char 37}} \define\lunars {{\Gf \char 1}} \define\lunarS {{\Gf \char 13}} \define\brcl {{\Gf \char 8}} \define\brcr {{\Gf \char 9}} \define\hbrl {{\Gf \char123}} \define\hbrr {{\Gf \char125}} \define\crux {{\Gf \char 43}}
I have no greek, so: \definefontsynonym[kadmo][cmvtt10] \crux
\stoptext
Thanks everybody! Thomas %module t-greek providing method for Greek input in ConTeXt \unprotect \def\setupgreek#1[#2]{% \getparameters[GG][Scale=,Font=,#2]%Font,Scale \xdef\MyScale{\GGScale}% \processaction[\GGFont] [ Oxonia=>\gdef\MyFont{greeoxon },%this switches from the "logical" name of the font to the actual tfm Ibycus=>\gdef\MyFont{fibr }, Bosporos=>\gdef\MyFont{Bosporos }, Gentium=>\gdef\MyFont{gentiumgr }, Kadmos=>\gdef\MyFont{kadmo }, Leipzig=>\gdef\MyFont{grbl }, Teubner=>\gdef\MyFont{Teubnerc }]% } \protect %\definefont[Gf][kadmo ] %When given the name of the tfm in clear, this works %\definefont[Gf][\MyFont]%This does not work, and I have no clue why \definebodyfont[4pt,5pt,6pt,7pt,8pt,9pt,10pt,10.5pt,11pt,12pt,14pt,14. 4p t,16pt,18pt,20pt,22pt][rm][Gf=\MyFont sa \MyScale] %This DOES work, and I can't see what's the fundamental difference to the preceding line. \def\enablegreek{\language[greek]\catcode`~=\other\catcode`|=\other\ca tc ode`'=\other}%this was provided by Giuseppe \def\startgreek{\par\begingroup\Gf\enablegreek} \let\stopgreek\endgroup \def\localgreek{\groupedcommand{\Gf\enablegreek}{}} \define\sampi{{\Gf \char34}}%and this by Taco \define\digamma{{\Gf \char35}} \define\stigma{{\Gf \char36}} \define\koppa{{\Gf \char37}} \define\lunars{{\Gf \char1}} \define\lunarS{{\Gf \char13}} \define\brcl{{\Gf \char8}} \define\brcr{{\Gf \char9}} \define\hbrl{{\Gf \char123}} \define\hbrr{{\Gf \char125}} \define\crux{{\Gf \char43}} On Jan 23, 2005, at 10:24 PM, h h extern wrote:
Thomas A.Schmitz wrote:
I spent some (too much) time today improving my Greek module. For the time being, two questions remain; I'm confident that they're not too difficult for the experts; any help would be appreciated.
what exactly do you want to achieve, if it's only some font following the sizes and styyles ...
\definefontsynonym [Funny] [cmr10] \definefontsynonym [FunnyBold] [cmbx10] \definefontsynonym [FunnyItalic] [cmti10] % \definefontsynonym [FunnySlanted] [...] % \definefontsynonym [FunnyBoldItalic] [...] % \definefontsynonym [FunnyBoldSlanted] [...]
\def\MyFunnyFont{\symbolicfont{Funny}}
test {\MyFunnyFont test} test test {\it \MyFunnyFont test} test test {\bf \MyFunnyFont test} test
----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
_______________________________________________ ntg-context mailing list ntg-context@ntg.nl http://www.ntg.nl/mailman/listinfo/ntg-context
_______________________________________________ ntg-context mailing list ntg-context@ntg.nl http://www.ntg.nl/mailman/listinfo/ntg-context
--
----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
_______________________________________________ ntg-context mailing list ntg-context@ntg.nl http://www.ntg.nl/mailman/listinfo/ntg-context