[NTG-context] \typescriptthree within the optional argument of \definefontsynonym
Wolfgang Schuster
schuster.wolfgang at gmail.com
Thu Aug 4 15:43:43 CEST 2016
> Mohammad Hossein Bateni <mailto:bateni at gmail.com>
> 4. August 2016 um 15:24
> Hello Hans,
>
> Suppose you have a typescript as follows.
>
> \starttypescript [first] [MyFont] [GoodieOne,GoodieTwo]
> \definefontsynonym [Serif] [\typescripttwo] [goodies=\typescriptthree]
> \stoptypescript
>
> Using macros \typescriptX (for X=one, two, and three) works in the
> first and second arguments in \definefontsynonym but not in the
> optional argument. This seems to be because the optional argument is
> not expanded. Is this a bug or a feature?
>
> What I want to do was have a set of "fixes" (correcting kern issues,
> etc.) for a collection of fonts. I can either put these in separate
> goodie files or feature sets (the latter being what I was trying but
> not in the sample above), and write generic typescripts that would
> load any of the fonts with its associated fixes.
>
> While I can use sans/serif/mono in the first argument, and name of the
> font in the second argument (to be mapped appropriately using
> \typescriptprefix to nmemonic name and real font name), the third
> (optional) argument of \definefontsynonym does not expand immediately,
> hence I'll end up with "undefined" \typescriptthree when it will be used.
You can try to expand the value of \typescripthree with
\starttypescript[...][...][...]
\expanded{\definefontsynonym[...][...][goodies=\typescriptthree]}
\expanded{\definefontsynonym[...][...][goodies=\typescriptthree]}
\stoptypescript
or
\starttypescript[...][...][...]
\startexpanded
\definefontsynonym[...][...][goodies=\typescriptthree]
\definefontsynonym[...][...][goodies=\typescriptthree]
\stopexpanded
\stoptypescript
Wolfgang
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.ntg.nl/pipermail/ntg-context/attachments/20160804/e6a6b325/attachment.html>
More information about the ntg-context
mailing list