On 12/20/18 2:41 PM, Bruno Le Floch wrote:
> On 12/20/18 08:35, Joseph Wright wrote:
>> On 20/12/2018 05:56, Tisha Shusho wrote:
>>> Hello List,
>>> In "The LaTeX3 Sources" document it says (on p. 296,
>>> Released 2018-12-12):
>>> "Older versions of expl3 divided up primitives by “source”:
>>> that becomes very tricky with multiple parallel engine
>>> developments, so has been dropped. To cover the transition,
>>> we provide the older names here for a limited period (until
>>> the end of019)."
>>> Does this mean one should avoid using functions such as
>>> If yes, are there any alternative to such commands?
>>> Furthermore, in "The expl3 package and LaTeX3 programming"
>>> document it says (on page 7, Released 2018-12-12):
>>> "D This means: Do not use. This special case is used for TEX
>>> primitives. Programmers outside the kernel team should not use
>>> these functions!"
>>> Again, which function should a programmer who is not a member
>>> of kernel team use instead of "\etex_iffontchar:D"?
>> We moved all of the primitives to \tex_...:D a while ago: the engine
>> history is not really helpful in dealing with them.
>> For cases where you *have* to use a :D command, we recommend making a
>> private copy
>> \cs_neq_eq:NN \__module_fontchar:w \tex_fontchar:D
>> then using that.
> To avoid possible confusion, here is the command with the typo
> corrected, and of course replace "module" by the name of your module.
> \cs_set_eq:NN \__module_fontchar:w \tex_fontchar:D
I think Joseph meant:
\cs_new_eq:NN \__module_fontchar:w \tex_fontchar:D
However, as I understand from the document the <cs> created by
"\cs_new_eq" is global, but according to the description of
"\cs_set_eq" which reads:
"The assignment of a meaning to the <control sequence1> is
restricted to the current TeX group level.", I think the
assignment is valid within the module only.
Am I right?