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\catc
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
[email protected]
http://www.ntg.nl/mailman/listinfo/ntg-context
_______________________________________________
ntg-context mailing list
[email protected]
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
[email protected]
http://www.ntg.nl/mailman/listinfo/ntg-context