Re: synonyms

Jean-Pierre Delange via ntg-context <[email protected]>
Newsgroups gmane.comp.tex.context
Message-ID <[email protected]>
    Hi Hraban,

    I think your observation is correct — but fortunately it seems to be
    a feature rather than another mysterious ConTeXt gremlin.

    The point is that |\infull| is not a generic command that searches
    through every synonym list. It is tied to the predefined
    |abbreviation| list. So this works:

    \abbreviation{CG}{context group}
    \CG\ is \infull{CG}

    because |CG| belongs to that predefined list.

    With a user-defined synonym list, however, the third argument of
    |\definesynonyms| is important: it defines the command that
    retrieves the full form for that particular list.

    I tested the following complete MWE with current LMTX:

    % ========= Beginning of MWE =====

    \abbreviation{CG}{context group}
    \abbreviation[kuk]{k.u.k.}{königlich und kaiserlich}
    \definesynonyms
    [Abk]
    [Aküs]
    [\AbkFull]
    \setupsynonyms
    [Abk]
    [style=,
    color=green,
    textstyle=bold,
    textcolor=red]
    \Abk{TUG}{\TeX\ Users Group}
    \Abk[zB]{z.\,B.}{zum Beispiel}
    \starttext
    \subject{Predefined abbreviations}
    \CG\ is \infull{CG}.
    \kuk
    \blank[big]
    \subject{User-defined synonyms}
    \zB\ is \AbkFull{zB}.
    \TUG\ is \AbkFull{TUG}.
    \blank[big]
    \subject{Lists}
    \completelistofabbreviations
    \placelistofAküs
    \stoptext

    % ==== End of MWE ====


    The output is as expected:

    CG is CONTEXT GROUP.
    k.u.k.
    z. B. is zum Beispiel.
    TUG is TEX Users Group.

    and the two lists remain separate: the predefined abbreviations list
    contains |CG| and |k.u.k.|, while the custom |Abk| list contains
    |TUG| and |z. B.|.

    So I would avoid reusing |\infull| for the custom list, especially
    if both predefined abbreviations and user-defined synonyms are used
    in the same document. A dedicated command such as |\AbkFull| makes
    the relationship explicit and avoids surprises.

    The current source confirms this: the third argument of
    |\definesynonyms| is used to define the command that inserts the
    meaning for that specific synonym list. The /Excursion/ manual uses
    the same mechanism with:

    \definesynonyms[Shortcut][Shortcuts][\infull]

    So perhaps the only real culprit here is the documentation: this
    connection between the third argument and the synonym list could be
    made a little more explicit.

    Best,
    JP

PS : I kept your |k.u.k.| example — Musil would surely approve of giving 
abbreviations their proper administrative treatment.



Le 13/08/2026 à 21:04, Henning Hraban Ramm a écrit :
> Hi,
> I recognized I didn’t have synonyms/abbreviations in my book and 
> tested them.
> Apparently, \infull doesn’t work with self-defined synonym lists. Is 
> this to be expected?
>
> Hraban
>
>
> """
> \abbreviation{CG}{context group}
> \abbreviation[kuk]{k.u.k.}{königlich und kaiserlich}
>
> \definesynonyms[Abk][Aküs] % Singular/Plural
> \setupsynonyms[Abk][
>   style=,color=green, % list format
>   textstyle=bold,textcolor=red, % text format
> ]
> \Abk{TUG}{\TeX\ Users Group}
> \Abk[zB]{z.\,B.}{zum Beispiel}
>
> \starttext
>
> \samplefile{knuth}\TUG
>
> \zB\ is \infull{zB} /// \CG\ is \infull{CG}
> %       ^^^^^^^^^^^ is empty
>
> \kuk
>
> %\page
> %\placelistofabbreviations
>
> \completelistofabbreviations
>
> \placelistofabbreviations % empty
>
> \placelistofAküs % or \placelistofsynonyms[Abk]
>
> \stoptext
> """
> ___________________________________________________________________________________ 
>
> If your question is of interest to others as well, please add an entry 
> to the Wiki!
>
> maillist : [email protected] / 
> https://mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl
> webpage  : https://www.pragma-ade.nl / https://context.aanhet.net 
> (mirror)
> archive  : https://github.com/contextgarden/context
> wiki     : https://wiki.contextgarden.net
> ___________________________________________________________________________________ 
>

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : [email protected] / https://mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl
webpage  : https://www.pragma-ade.nl / https://context.aanhet.net (mirror)
archive  : https://github.com/contextgarden/context
wiki     : https://wiki.contextgarden.net
___________________________________________________________________________________
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.