Re[2]: [NTG-context] \=i

Hans Hagen ntg-context@ntg.nl
Tue, 01 Jun 2004 21:04:49 +0200


At 05:24 29/05/2004, you wrote:
>On Thu, 27 May 2004 23:47:07 +0200, Hans Hagen <pragma@wxs.nl> wrote:
>
>>ah, we stand you sitting there crying over tex, can we?
>
>Sometimes I want to curse TeX, believe me... Seriously though, I have a 
>real phobia for all that low low-level stuff...
>
>Did u have a chance 2 look at my general solution 4 medium fonts? I would 
>like to generalize it to bold and small caps but I don't understand how to 
>set up a conditionals macro that expands in accordance with the 
>surrounding font. I need sthing like
>
>\ifboldtrue
>\IBARA % parameterized for bold fonts
>\else
>\ifsctrue
>\IBARB % parameterized for sc fonts
>\else
>\IBAR  % parameterized for medium fonts
>\fi\fi

take a look at font-ini and search for the definition of \em; but since you 
suffered already a lot:

\unprotect

\definesystemvariable{sx}

\def\definestylecollection
   {\dotripleargument\dodefinestylecollection}

\def\dodefinestylecollection[#1][#2][#3]%
   {\unexpanded\setvalue{#1}{\styleinstance[#1]}%
    \setvalue{\??sx#1:#2}{#3}}

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

\protect

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

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

let me know if this works ok, maybe i can add it to the kernel then

Hans