[Foxet] typescript definitions

Top Page
Author: Adam Lindsay
Date:  
To: Foxet
Subject: [Foxet] typescript definitions
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@???
 Lancaster University, InfoLab21        +44(0)1524/510.514
 Lancaster, LA1 4WA, UK             Fax:+44(0)1524/510.492
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


_______________________________________________
Foxet mailing list
Foxet@???
http://www.ntg.nl/mailman/listinfo/foxet