* Smart Acronym Pluralization (`y' or `ie' before `s')
@ 2015-05-23 23:39 Alexander Shukaev
2015-05-24 9:17 ` Hans Hagen
0 siblings, 1 reply; 3+ messages in thread
From: Alexander Shukaev @ 2015-05-23 23:39 UTC (permalink / raw)
To: ntg-context
[-- Attachment #1.1: Type: text/plain, Size: 350 bytes --]
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.
Kind regards,
Alexander
[-- Attachment #1.2: Type: text/html, Size: 1476 bytes --]
[-- Attachment #2: Type: text/plain, Size: 485 bytes --]
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
archive : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___________________________________________________________________________________
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Smart Acronym Pluralization (`y' or `ie' before `s')
2015-05-23 23:39 Smart Acronym Pluralization (`y' or `ie' before `s') Alexander Shukaev
@ 2015-05-24 9:17 ` Hans Hagen
2015-05-24 14:56 ` Alexander Shukaev
0 siblings, 1 reply; 3+ messages in thread
From: Hans Hagen @ 2015-05-24 9:17 UTC (permalink / raw)
To: ntg-context
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
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
archive : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___________________________________________________________________________________
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Smart Acronym Pluralization (`y' or `ie' before `s')
2015-05-24 9:17 ` Hans Hagen
@ 2015-05-24 14:56 ` Alexander Shukaev
0 siblings, 0 replies; 3+ messages in thread
From: Alexander Shukaev @ 2015-05-24 14:56 UTC (permalink / raw)
To: mailing list for ConTeXt users
[-- Attachment #1.1: Type: text/plain, Size: 2760 bytes --]
On Sun, May 24, 2015 at 11:17 AM, Hans Hagen <pragma@wxs.nl> wrote:
> 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
> -----------------------------------------------------------------
>
> ___________________________________________________________________________________
> If your question is of interest to others as well, please add an entry to
> the Wiki!
>
> maillist : ntg-context@ntg.nl /
> http://www.ntg.nl/mailman/listinfo/ntg-context
> webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
> archive : http://foundry.supelec.fr/projects/contextrev/
> wiki : http://contextgarden.net
>
> ___________________________________________________________________________________
Hello Hans,
Thanks for your response. It seems to me that a simple (and backward
compatible) extension would be to add the 3rd optional parameter to
`ACRONYM':
\ACRONYM{DLL}{Dynamic-Link Library}[Dynamic-Link Libraries][s]
^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ ^
<single> <plural> <trigger>
(should of course be `s' by default, but let it be configurable just in
case)
and put
\doifnextcharelse{<trigger>}{<plural>}{<single>}
inside `FULL' properly so that it can indeed find <trigger> in case of
`\FULL{DLL}<trigger>'.
Regards,
Alexander
[-- Attachment #1.2: Type: text/html, Size: 5649 bytes --]
[-- Attachment #2: Type: text/plain, Size: 485 bytes --]
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
archive : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___________________________________________________________________________________
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-05-24 14:56 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-23 23:39 Smart Acronym Pluralization (`y' or `ie' before `s') Alexander Shukaev
2015-05-24 9:17 ` Hans Hagen
2015-05-24 14:56 ` Alexander Shukaev
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).