This one is better:

% add to cont-new.tex

\unprotect

\definesystemvariable{sx}

\def\definestylecollection
  {\dosingleargument\dodefinestylecollection}

\def\dodefinestylecollection[#1]%
  {\iffirstargument
     \unexpanded\setvalue{#1}{\styleinstance[#1]}%
     \def\docommand##1{\letbeundefined{\??sx##1:\commalistelement}}%
     \processcommacommand[\stylelist,\s!default]\docommand
   \fi}

\def\definestyleinstance
  {\dotripleargument\dodefinestyleinstance}

\def\dodefinestyleinstance[#1][#2][#3]%
  {\ifsecondargument
     \doifundefined{#1}{\definestylecollection[#1]}%
     \setvalue{\??sx#1:#2}{#3}%
   \fi}

\unexpanded\def\styleinstance[#1]%
  {\executeifdefined{\??sx#1:\fontalternative}{\getvalue{\??sx#1:\s!default}}}

\protect

% so far

\definestylecollection[mine]

\definestyleinstance[mine][default][sorry]
\definestyleinstance[mine][bf][\sl]
\definestyleinstance[mine][sl][\tt]

{\bf test \mine test \sl test \mine test \bs oeps \mine oeps}

(of course you now have to write a MyWay to explain it)

Hans


------------------------------------------------------------------------- Hans Hagen | PRAGMA ADE/POD/CTS Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: +31 (0)38 477 53 69 | fax: +31 (0)38 477 53 74 | www.pragma-ade.com ------------------------------------------------------------------------- information: http://www.pragma-ade.com/roadmap.pdf documentation: http://www.pragma-ade.com/showcase.pdf -------------------------------------------------------------------------

_______________________________________________
ntg-context mailing list
[EMAIL PROTECTED]
http://www.ntg.nl/mailman/listinfo/ntg-context

Reply via email to