diff options
Diffstat (limited to 'tex/context/base/lang-spe.tex')
-rw-r--r-- | tex/context/base/lang-spe.tex | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/tex/context/base/lang-spe.tex b/tex/context/base/lang-spe.tex index 845040dce..bd34674b2 100644 --- a/tex/context/base/lang-spe.tex +++ b/tex/context/base/lang-spe.tex @@ -25,7 +25,12 @@ \newevery \everyresetlanguagespecifics \relax -\def\resetlanguagespecifics{\the\everyresetlanguagespecifics} +\def\resetlanguagespecifics + {\ifcase\protectionlevel + \the\everyresetlanguagespecifics + \else % to be translated + \writestatus{system}{don't change language in unprotected mode!}% + \fi} \appendtoks \resetlanguagespecifics @@ -163,19 +168,30 @@ \expanded{\doglobal\noexpand\appendtoks{#1}{\the\catcode`#1}}\to\everyresetlanguagespecifics \fi} -\def\dodeactivatetoken#1#2#3% - {\def#1{#2}\catcode`#2=#3\relax} +% \def\dodeactivatetoken#1#2#3% +% {\def#1{#2}\catcode`#2=#3\relax} + +\def\dodeactivatetoken#1#2#3% tets needed to avoid clash with \unprotect + {\def#1{#2}\ifnum\catcode`#2=\@@active\catcode`#2=#3\relax\fi} %D We cannot hook this into the installer since language %D specifics can be anything. So far, we have the following %D potentially active characters. +%D Beware, this should happen under an unprotected regime; +%D thanks to Giuseppe Oblomov Bilotta, who first noticed +%D that something was wrong. + +\protect + \deactivatelanguagespecific " \deactivatelanguagespecific / \deactivatelanguagespecific : \deactivatelanguagespecific ; \deactivatelanguagespecific ? \deactivatelanguagespecific ! + +\unprotect %D \macros %D {ordinaldaynumber, highordinalstr, ordinalstr} |