* finishing a module
@ 2005-01-22 20:41 Thomas A.Schmitz
2005-01-23 9:33 ` Taco Hoekwater
2005-01-23 21:24 ` h h extern
0 siblings, 2 replies; 14+ messages in thread
From: Thomas A.Schmitz @ 2005-01-22 20:41 UTC (permalink / raw)
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.
I've succesfully defined my fonts and scale like so:
\def\setupgreek#1[#2]{%
\getparameters[GG][Scale=,Font=,#2]
\edef\MyScale{\GGScale}%
\processaction[\GGFont]
[ SomeFont1=>\def\MyFont{somefont },
SomeFont2=>\def\MyFont{someotherfont }]%
}
\protect
(The space after "somefont" looks ugly, but I haven't figured out how
to get rid of it; TeX will always complain if I delete it.)
1. After this definition, this will work:
\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, however, will not work:
\definefont[Gf][\MyFont sa \MyScale]
and I don't see why. Can anybody explain? I see that the \definefont...
takes care of the annoying problem with font sizes, so I would prefer
that way.
2. In my module, I define some special symbols:
\define\koppa{\getglyph{\MyFont}{\char37}}
Is there a way to give the same scaling factor here as in the
definition of \Gf? I tried
\define\koppa{\getglyph{\MyFont scaled XXXX}{\char37}}
as a first attempt which kind of works but gives me the letters "at" in
the pdf in front of the symbol.
Best
Thomas
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
2005-01-22 20:41 finishing a module Thomas A.Schmitz
@ 2005-01-23 9:33 ` Taco Hoekwater
2005-01-23 13:33 ` Thomas A.Schmitz
2005-01-23 21:24 ` h h extern
1 sibling, 1 reply; 14+ messages in thread
From: Taco Hoekwater @ 2005-01-23 9:33 UTC (permalink / raw)
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.
See below for my (adjusted) input file, I hope it helps.
> (The space after "somefont" looks ugly, but I haven't figured out how
> to get rid of it; TeX will always complain if I delete it.)
Using \getvalue{MyFont} instead of \MyFont will allow you to remove
the space from the definition, but that may not be what you want,
because it is more cumbersome. If that is the case, just leave the
space there.
> 1. After this definition, this will work:
> \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, however, will not work:
> \definefont[Gf][\MyFont sa \MyScale]
Both work for me. Unless I misunderstood what it is supposed to do.
> 2. In my module, I define some special symbols:
> \define\koppa{\getglyph{\MyFont}{\char37}}
Rude, but effective:
\define\koppa {{\Gf \char37}}
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.4pt,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
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
2005-01-23 9:33 ` Taco Hoekwater
@ 2005-01-23 13:33 ` Thomas A.Schmitz
2005-01-23 14:06 ` Taco Hoekwater
0 siblings, 1 reply; 14+ messages in thread
From: Thomas A.Schmitz @ 2005-01-23 13:33 UTC (permalink / raw)
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
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
2005-01-23 13:33 ` Thomas A.Schmitz
@ 2005-01-23 14:06 ` Taco Hoekwater
2005-01-23 14:42 ` Thomas A.Schmitz
0 siblings, 1 reply; 14+ messages in thread
From: Taco Hoekwater @ 2005-01-23 14:06 UTC (permalink / raw)
Thomas A.Schmitz wrote:
>> This, however, will not work:
>> \definefont[Gf][\MyFont sa \MyScale]
> 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...
I see. You need
\expanded{\definefont[Gf][\MyFont sa \MyScale]}
Or you could \xdef the MyScale (instead of \edef), making it global.
Greetings, Taco
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
2005-01-23 14:06 ` Taco Hoekwater
@ 2005-01-23 14:42 ` Thomas A.Schmitz
2005-01-23 15:22 ` Taco Hoekwater
0 siblings, 1 reply; 14+ messages in thread
From: Thomas A.Schmitz @ 2005-01-23 14:42 UTC (permalink / raw)
Taco, I feel bad taking your time, but still no go. For clarity's sake,
I leave aside the scaling for the time being. I thought that after
unprotect
\def\setupgreek#1[#2]{%
\getparameters[GG][Scale=,Font=,#2]%Font,Scale
\xdef\MyScale{\GGScale}%
\processaction[\GGFont]
[ SomeFont=>\xdef\MyFont{somefont }]%
}
\protect
the macro \MyFont would always expand to "somefont ". But it doesn't
seem to do so in
\definefont[Gf][\MyFont]
I still get the error message. When I assign it "manually"
\definefont[Gf][somefont ]
it works. I tried every combination of \expanded, \xdef or \edef, but
it doesn't seem to work (while it does work in \definebodyfont). So it
must be something within ConTeXt that doesn't let it expand, and I
don't see how I could escape this problem. The \definebodyfont is a
workaround for now, but it has the problem that I have to give precise
font dimensions, which might fail in certain circumstances.
Thanks again
Thomas
On Jan 23, 2005, at 3:06 PM, Taco Hoekwater wrote:
> Thomas A.Schmitz wrote:
>>> This, however, will not work:
>>> \definefont[Gf][\MyFont sa \MyScale]
>
>> 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...
>
> I see. You need
>
> \expanded{\definefont[Gf][\MyFont sa \MyScale]}
>
> Or you could \xdef the MyScale (instead of \edef), making it global.
>
> Greetings, Taco
> _______________________________________________
> ntg-context mailing list
> ntg-context@ntg.nl
> http://www.ntg.nl/mailman/listinfo/ntg-context
>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
2005-01-23 14:42 ` Thomas A.Schmitz
@ 2005-01-23 15:22 ` Taco Hoekwater
0 siblings, 0 replies; 14+ messages in thread
From: Taco Hoekwater @ 2005-01-23 15:22 UTC (permalink / raw)
Thomas A.Schmitz wrote:
>
> the macro \MyFont would always expand to "somefont ". But it doesn't
> seem to do so in
It should (at least until someone calls \xdef\MyFont again).
> \definefont[Gf][\MyFont]
>
> I still get the error message.
The problem is not the \MyFont \def, but in the \definefont, that is why
I thought that \expanded{\definefont[Gf][\MyFont]} should work.
And, AFAICS, it does work fine here.
Greetings, Taco
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
2005-01-22 20:41 finishing a module Thomas A.Schmitz
2005-01-23 9:33 ` Taco Hoekwater
@ 2005-01-23 21:24 ` h h extern
2005-01-24 14:06 ` Thomas A.Schmitz
1 sibling, 1 reply; 14+ messages in thread
From: h h extern @ 2005-01-23 21:24 UTC (permalink / raw)
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
-----------------------------------------------------------------
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
2005-01-23 21:24 ` h h extern
@ 2005-01-24 14:06 ` Thomas A.Schmitz
2005-01-24 17:50 ` Hans Hagen
` (2 more replies)
0 siblings, 3 replies; 14+ messages in thread
From: Thomas A.Schmitz @ 2005-01-24 14:06 UTC (permalink / raw)
Thanks for your help and interest. OK, what I want to achieve is:
setting up a collection of fonts for ancient (i.e. polytonic) Greek.
These fonts need to be mixed into normal text, and there needs to be a
simple way of switching to them. For the time being, I want to use the
"babel"-encoding for writing Greek, so I need to make a couple of
catcode changes (babel uses ~ and | for accents) [I guess if I can make
this work, I will then try and see if I can cook something up that
will actually take unicode characters and transform them into something
palatable for TeX, taking Adam's work as a model). I also need to
create commands to access a couple of special symbols like koppa, sampi
and braces for critical editions.
What I have: the fonts (there's 7 of them) in TeX-readable format (tfm
+ pfb)
With the help of Giuseppe and several others, I have cooked up a macro
that will switch to those fonts and do the catcode changes etc. Thus
far, they had to be invoked with an \input for every single font.
Problems:
Depending on the Latin font used for the main document, the Greek font
needs to be scaled or it will look ugly (too small, too big in
comparison). Hence my attempt to use Context's "sa" construct.
I want to simplify things by writing a single module that will give
access to all the fonts by providing a unified way of choosing one of
them.
My idea was having a module that would provide a new command
\setupgreek that would take two arguments: Name of the font suitable
for users, scaling factor.
E. g. \setupgreek[Oxonia][1.08] This module would then provide two
commands for writing Greek, \localgreek{...} and \startgreek ...
\stopgreek + commands for accessing the symbols.
Problems so far: my module defines the Greek font as a body font. As
far as I can see, this will only work for predefined sizes [4pt,5pt
etc.]. When a user sepcifies an unusual font size for his main document
or when TeX calculates a weird size (e.g. in footnotes, Alan Bowens's
problem last week), the font isn't defined anymore, and the macro for
writing Greek doesn't work. \definefont doesn't appear to have this
problem, but it works only if I give the name of the font "manually," I
couldn't make it accept an internal macro (Taco was very helpful
yesterday, but I couldn't make it work).
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!
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
>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
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:03 ` Hans Hagen
2 siblings, 0 replies; 14+ messages in thread
From: Hans Hagen @ 2005-01-24 17:50 UTC (permalink / raw)
Thomas A.Schmitz wrote:
you need at least to initialize
\setupgreek[Font=Leipzig,Scale=1]
Hans
-----------------------------------------------------------------
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
-----------------------------------------------------------------
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
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
2 siblings, 1 reply; 14+ messages in thread
From: Hans Hagen @ 2005-01-24 17:50 UTC (permalink / raw)
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!
i cannot fond those fonts; can they downloaded?
Hans
-----------------------------------------------------------------
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
-----------------------------------------------------------------
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
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:03 ` Hans Hagen
2005-01-24 18:47 ` Thomas A.Schmitz
2 siblings, 1 reply; 14+ messages in thread
From: Hans Hagen @ 2005-01-24 18:03 UTC (permalink / raw)
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
-----------------------------------------------------------------
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
2005-01-24 17:50 ` Hans Hagen
@ 2005-01-24 18:20 ` Thomas A.Schmitz
0 siblings, 0 replies; 14+ messages in thread
From: Thomas A.Schmitz @ 2005-01-24 18:20 UTC (permalink / raw)
On Jan 24, 2005, at 6:50 PM, Hans Hagen wrote:
>
> i cannot fond those fonts; can they downloaded?
>
>
Well, that's the point of creating this module: fibr, greeoxon, and
grbl can be downloaded on CTAN (in the packages "Teubner," "psgreek,"
and "Ibycus" for LaTeX). Bosporos and kadmo were Greek fonts for
Macintosh that I bought about 15 years ago; they were distributed by a
company that doesn't exist anymore. I created the tfm etc. for my
personal use (not sure about copyright stuff; if I make the module +
fonts publicly available, I might have to leave them out). gentium is a
unicode font that can be downloaded as a ttf from
http://scripts.sil.org for free; I just created the tfm. Teubnerc is an
old Greek font that I digitalized myself; it hasn't been used for about
100 years, so according to German copyright law, it is pretty much in
the public domain. This module would be an effort at some sort of
Uber-package for all kinds of Greek fonts bundled into one thingy.
On Jan 24, 2005, at 6:50 PM, Hans Hagen wrote:
>
> you need at least to initialize
>
> \setupgreek[Font=Leipzig,Scale=1]
>
OK, did that, but doesn't make a difference.
Thanks
Thomas
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
2005-01-24 18:03 ` Hans Hagen
@ 2005-01-24 18:47 ` Thomas A.Schmitz
2005-01-25 14:56 ` h h extern
0 siblings, 1 reply; 14+ messages in thread
From: Thomas A.Schmitz @ 2005-01-24 18:47 UTC (permalink / raw)
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
>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: finishing a module
2005-01-24 18:47 ` Thomas A.Schmitz
@ 2005-01-25 14:56 ` h h extern
0 siblings, 0 replies; 14+ messages in thread
From: h h extern @ 2005-01-25 14:56 UTC (permalink / raw)
Thomas A.Schmitz wrote:
> Oh dear, thanks so much! This does it, and I'm so impressed what you
-)
>> \define\crux {{\Gf \char 43}}
depending on how you use this, you can consider making those symbols
an other option is
\define\crux{\getglyph{\getvariable{Greek}{font}}{43}}
or so (untested); such glyphs also scale well.
Hans
-----------------------------------------------------------------
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
-----------------------------------------------------------------
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2005-01-25 14:56 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-01-22 20:41 finishing a module 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
2005-01-24 18:47 ` Thomas A.Schmitz
2005-01-25 14:56 ` h h extern
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).