On 5/24/2015 1:39 AM, Alexander Shukaev wrote:
Hello,
Consider the following:
\definesynonyms [ACRONYM] [ACRONYMS] [\FULL] [\SHORT]
\ACRONYM{DLL}{Dynamic-Link Librar\doifnextcharelse{s}{ie}{y}}
Why
\FULL{DLL}s
does not do what I expect it to do? I assume that it's because `\doifnextcharelse' expands before `\FULL'. So how to achieve the desired effect? Thanks.
\FULL is doing a lot and it's unlikely that inside there the nest token seen is the 's' so your test fails \ACRONYM{DLL}{\SelectFull{Dynamic-Link Library}{Dynamic-Link Libraries}} \def\VeryFullSingular#1#2{\FULL{#1}} \def\VeryFullPlural #1#2{\FULL{#2}} \unexpanded\def\VeryFull {\doifnextcharelse{s} {\let\SelectFull\VeryFullPlural} {\let\SelectFull\VeryFullSingular}} test \VeryFull{DLL} or \VeryFull{DLL}s it is if there is real need for this i can consider building something in but the check for a following 's' is not that common I think ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------