ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Hans Hagen <pragma@wxs.nl>
Subject: Re: finishing a module
Date: Mon, 24 Jan 2005 19:03:12 +0100	[thread overview]
Message-ID: <41F53860.2030400@wxs.nl> (raw)
In-Reply-To: <32D27C67-6E11-11D9-A125-000A95B9ADE2@uni-bonn.de>

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
>> 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
-----------------------------------------------------------------

  parent reply	other threads:[~2005-01-24 18:03 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-01-22 20:41 Thomas A.Schmitz
2005-01-23  9:33 ` Taco Hoekwater
2005-01-23 13:33   ` Thomas A.Schmitz
2005-01-23 14:06     ` Taco Hoekwater
2005-01-23 14:42       ` Thomas A.Schmitz
2005-01-23 15:22         ` Taco Hoekwater
2005-01-23 21:24 ` h h extern
2005-01-24 14:06   ` Thomas A.Schmitz
2005-01-24 17:50     ` Hans Hagen
2005-01-24 17:50     ` Hans Hagen
2005-01-24 18:20       ` Thomas A.Schmitz
2005-01-24 18:03     ` Hans Hagen [this message]
2005-01-24 18:47       ` Thomas A.Schmitz
2005-01-25 14:56         ` h h extern

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=41F53860.2030400@wxs.nl \
    --to=pragma@wxs.nl \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).