who can fix babel-french incompatibility with crossreftools
Murray Eisenberg
murrayeisenberg at gmail.com
Sun Oct 13 21:30:42 CEST 2019
David,
Never mind: it seems that inserting that code once after I load crossreftools avoids the errors.
Thank you so much! I dreaded having to poke into crossreftools and patch command after command.
Would you mind posting this workaround as an answer to this?
https://tex.stackexchange.com/questions/510591/babel-and-crossreftools-incompatibility/510641#510641
> On 13 Oct2019, at 3:24 PM, Murray Eisenberg <murrayeisenberg at gmail.com> wrote:
>
> Is that a one-place code addition I need to make, or is it something I need to use to patch each and every command in crossreftools that uses the csname…endcsname construction?
>
> [I _said_, in effect, that I’m nearly clueless so far as pure TeX is concerned(.I can get around OK with LaTeX constructs.)]
>
>> On 13 Oct2019, at 1:38 PM, David Carlisle <d.p.carlisle at gmail.com> wrote:
>>
>> On Sun, 13 Oct 2019 at 18:28, Zdenek Wagner <zdenek.wagner at gmail.com> wrote:
>>>
>>> Hi,
>>>
>>> you have to patch all macros where you need a colon with category 12,
>>> for instance:
>>
>>
>> I think it's better just to make the active : definition safe in
>> \label (by making it safe in a csname)
>>
>> \let\zzz\active at prefix
>> \def\active at prefix{\ifincsname\expandafter\string\else\expandafter\zzz\fi}
>>
>> should make all babel shorthand characters be protected by \string in
>> such constructs.
>>
>> David
>>
>>
>>>
>>> \let\origlabel\label
>>> \def\label{\begingroup\catcode`\:12\inactivelabel}
>>> \def\inactivelabel#1{\endgroup\origlabel{#1}}
>>>
>>> This is a general problem with babel and nobody is able to fix all
>>> packages with all languages. If you are not forced to use babel,
>>> consider switching to XeLaTeX and polyglossia. You will not have so
>>> many problems.
>>>
>>> Zdeněk Wagner
>>> http://ttsm.icpf.cas.cz/team/wagner.shtml
>>> http://icebearsoft.euweb.cz
>>>
>>> ne 13. 10. 2019 v 17:38 odesílatel Murray Eisenberg
>>> <murrayeisenberg at gmail.com> napsal:
>>>>
>>>> Because babel-french makes the colon (:) an active character, the functions in the crossreftools cause errors with \label when the argument of \label includes a colon. See:
>>>>
>>>> https://tex.stackexchange.com/questions/511030/another-babel-french-incompatibility-with-crossreftools
>>>>
>>>> https://tex.stackexchange.com/questions/510591/babel-and-crossreftools-incompatibility/510641#510641
>>>>
>>>> Who can fix this? (I am unqualified: the TeX in crossreftools is well beyond my very rudimentary knowledge of pure TeX.)
>>>>
>>>> The package maintainer is Christian Hupfer, but according to his tex.stackexchange.com profile, he has stopped reading tex.stackexchange and “returned to the Black Forest."
>>>> ---
>>>> Murray Eisenberg murrayeisenberg at gmail.com
>>>> 503 King Farm Blvd #101 Home (240)-246-7240
>>>> Rockville, MD 20850-6667 Mobile (413)-427-5334
>>>>
>>>>
>>>
>
> ---
> Murray Eisenberg murrayeisenberg at gmail.com
> 503 King Farm Blvd #101 Home (240)-246-7240
> Rockville, MD 20850-6667 Mobile (413)-427-5334
>
>
---
Murray Eisenberg murrayeisenberg at gmail.com
503 King Farm Blvd #101 Home (240)-246-7240
Rockville, MD 20850-6667 Mobile (413)-427-5334
More information about the tex-live
mailing list