From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/6545 Path: main.gmane.org!not-for-mail From: Giuseppe Bilotta Newsgroups: gmane.comp.tex.context Subject: Re: Definitions Date: Sun, 20 Jan 2002 18:56:24 +0100 Sender: owner-ntg-context@let.uu.nl Message-ID: <1348356055.20020120185624@bigfoot.com> References: <14910577386.20020117144544@bigfoot.com> Reply-To: Giuseppe Bilotta NNTP-Posting-Host: coloc-standby.netfonds.no Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: main.gmane.org 1035397070 11567 80.91.224.250 (23 Oct 2002 18:17:50 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Wed, 23 Oct 2002 18:17:50 +0000 (UTC) Cc: ntg-context@ntg.nl Original-To: Giuseppe Bilotta In-Reply-To: <14910577386.20020117144544@bigfoot.com> Xref: main.gmane.org gmane.comp.tex.context:6545 X-Report-Spam: http://spam.gmane.org/gmane.comp.tex.context:6545 Thursday, January 17, 2002 Giuseppe Bilotta wrote: GB> Hello, GB> I have a bug report and an enhancement request for enumerations. GB> First of all: the bug. I found the bug. It comes from the definition in core-des: \def\special@@definitiewoord#1#2#3#4[#5]#6#7% {\strut \doifelsevalue{\??dd#1\c!nummer}{\v!nee} {\!!doneafalse} {\doifelse{#5}{-} {\!!doneafalse} {\!!doneatrue}}% \chardef\definitiekoppeling=0 \iflocation \doifvaluesomething{\??dd#1\c!koppeling} {\processaction % genereert > of < [\getvalue{\??dd#1\c!koppelwijze}] [ \v!lokaal=>\chardef\definitiekoppeling=1, % old: default \v!globaal=>\chardef\definitiekoppeling=2]}% new: global crosslinking \fi \stelnummerin % the number is called indirectly [\getvalue{\??dd#1\??dd\c!nummer}] [\c!sectienummer=\getvalue{\??dd#1\c!sectienummer}]% \if!!donea \getvalue{\e!volgende#2#1}% \iflocation \bgroup \setvalue{\??dd#1\c!sectienummer}{\v!ja}% \protectconversion %\maakvoorafgaandenummer[#1]% \maakvoorafgaandenummer[\getvalue{\??dd#1\??dd\c!nummer}]% \ifcase\definitiekoppeling \or \xdef\internaldoornummer{#3{#1}}% \rawreference{\s!num}{#1:\internaldoornummer}{}% \or \xdef\internaldoornummer{\countervalue{\??dd\c!koppeling#1}}% \rawreference{\s!num}{#1:\internaldoornummer}{}% \fi \egroup \fi %\maakvoorafgaandenummer[#1]% \maakvoorafgaandenummer[\getvalue{\??dd#1\??dd\c!nummer}]% \hbox {\let\normalkap\relax % sorry, uppercase causes troubles \doattributes % \nocase primitive needed {\??dd#1}\c!kopletter\c!kopkleur {\getvalue{\??dd#1\c!commando}% hook for taco {\showdntext{#2#1}% \domakednnummer{#1}{#2}{#3}}}% \iflocation\ifcase\definitiekoppeling \else \edef\localconnection{\getvalue{\??dd#1\c!koppeling}:\internaldoornummer}% \doifreferencefoundelse{\localconnection} {\in[\localconnection]}{}% genereert > of < %\in[\localconnection]% \fi\fi}% \doifnot{#5}{-}{\rawreference{\s!num}{#5}{#3{#1}}}% % Here is the bug -----------------------------^^^^^^ % When this gets called with \showdnnummer as #3, there % is an expansion problem, since \showdnnummer is *not* % properly expandable: it uses the command sequence % \preparednumber which is defined by \showdnnummer itself % If I change the line with something like \preparethenumber{\??dd#1}\voorafgaandenummer\preparednumber \edef\thenumbertouse{% \preparednumber \nummer[\getvalue{\??dd#1\??dd\c!nummer}]}% \doifnot{#5}{-}{\rawreference{\s!num}{#5}{\thenumbertouse}}% % everything goes on smoothly. % Maybe we need and expandable version of showdnnummer? \else % Why was this strange expansion needed? \hbox {\edef\!!stringa{\showdnpuretext{#2#1}}% nog eens testen binnen \expanded \expanded{\doattributes{\??dd#1}\noexpand\c!kopletter\noexpand\c!kopkleur {\noexpand\getvalue{\??dd#1\c!commando}% {\!!stringa}}}% \doifnot{#5}{-}{\rawreference{\s!num}{#5}{}}}% \fi} -- Giuseppe "Oblomov" Bilotta