[Foxet] typescript definitions
Adam Lindsay
atl at comp.lancs.ac.uk
Thu Dec 23 16:17:32 CET 2004
Hey all.
I'm trying to get a minimal functional, non-Foxet-specific configuration
system going in XML (liberally stealing from x-fx). I'd like to trim
some of the redundancy when calling this, though:
\defineXMLcommand
[setup:definetypeface] [fox]
[label=default, class=rm, family=serif, name=times,
size=default, rscale=1, encoding=\defaultencoding]
{\initializefox
\expanded{\definetypeface[\foxlabel] [\foxclass]
[\foxfamily] [\foxname] [\foxsize] [\foxarguments]}}
(All of the parameter names are arbitrary--feel free to correct me on them.)
This works more or less as I like:
<setup:definetypeface label="mine" family="serif" class="rm" name="palatino"/>
<setup:definetypeface label="mine" family="sans" class="ss" name="helvetica"/>
<setup:definetypeface label="mine" family="math" class="mm" name="palatino"/>
...but I'd like to get rid of the class parameter, as, for most
everyone's purposes, it adds no information. I considered and rejected
\mapXMLvalue, because it's from a different attribute.
My first try was this, but it leaves some textual garbage.
\defineXMLcommand
[setup:definetypeface] [fox]
[label=default, family=serif, name=times,
size=default, rscale=1, encoding=\defaultencoding]
{\initializefox
\expanded{\definetypeface[\foxlabel]
[\XMLifequalelse{setup:definetypeface}{family}{serif}{rm}
{\XMLifequalelse{setup:definetypeface}{family}{sans}{ss}
{\XMLifequalelse{setup:definetypeface}{family}{math}{mm}
{\XMLifequalelse{setup:definetypeface}{family}{mono}{tt}
{\XMLifequalelse{setup:definetypeface}{family}{handwriting}{hw}
{\XMLifequalelse{setup:definety
peface}{family}{calligraphy}{cg}{rm}}}}}}]
[\foxfamily] [\foxname] [\foxsize] [\foxarguments]}}
ConTeXt's XML mappings are new to me, so I'm clearly overlooking
something. Anyone have any advice?
cheers,
adam
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Adam T. Lindsay, Computing Dept. atl at comp.lancs.ac.uk
Lancaster University, InfoLab21 +44(0)1524/510.514
Lancaster, LA1 4WA, UK Fax:+44(0)1524/510.492
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
More information about the Foxet
mailing list