diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/babel/babel.def')
-rw-r--r-- | Master/texmf-dist/tex/generic/babel/babel.def | 178 |
1 files changed, 89 insertions, 89 deletions
diff --git a/Master/texmf-dist/tex/generic/babel/babel.def b/Master/texmf-dist/tex/generic/babel/babel.def index ca00ffc855e..a2d1dcefeec 100644 --- a/Master/texmf-dist/tex/generic/babel/babel.def +++ b/Master/texmf-dist/tex/generic/babel/babel.def @@ -40,10 +40,9 @@ \wlog{File: #1 #4 #3 <#2>}% \let\ProvidesFile\@undefined} \fi -\ProvidesFile{babel.def}[2021/07/22 3.63 Babel common definitions] +\ProvidesFile{babel.def}[2021/10/13 3.64 Babel common definitions] \ifx\AtBeginDocument\@undefined % TODO. change test. - % == Code for plain == -\def\@empty{} + \def\@empty{} \def\loadlocalcfg#1{% \openin0#1.cfg \ifeof0 @@ -93,6 +92,25 @@ \ifx#2\@empty\else\expandafter\zap@space\fi #2} \let\bbl@trace\@gobble +\def\bbl@error#1#2{% + \begingroup + \newlinechar=`\^^J + \def\\{^^J(babel) }% + \errhelp{#2}\errmessage{\\#1}% + \endgroup} +\def\bbl@warning#1{% + \begingroup + \newlinechar=`\^^J + \def\\{^^J(babel) }% + \message{\\#1}% + \endgroup} +\let\bbl@infowarn\bbl@warning +\def\bbl@info#1{% + \begingroup + \newlinechar=`\^^J + \def\\{^^J}% + \wlog{#1}% + \endgroup} \ifx\@preamblecmds\@undefined \def\@preamblecmds{} \fi @@ -365,37 +383,36 @@ \ifx\scriptsize\@undefined \let\scriptsize\sevenrm \fi - % End of code for plain - \def\languagename{english}% - \let\bbl@opt@shorthands\@nnil - \def\bbl@ifshorthand#1#2#3{#2}% - \let\bbl@language@opts\@empty - \ifx\babeloptionstrings\@undefined - \let\bbl@opt@strings\@nnil - \else - \let\bbl@opt@strings\babeloptionstrings - \fi - \def\BabelStringsDefault{generic} - \def\bbl@tempa{normal} - \ifx\babeloptionmath\bbl@tempa - \def\bbl@mathnormal{\noexpand\textormath} - \fi - \def\AfterBabelLanguage#1#2{} - \ifx\BabelModifiers\@undefined\let\BabelModifiers\relax\fi - \let\bbl@afterlang\relax - \def\bbl@opt@safe{BR} - \ifx\@uclclist\@undefined\let\@uclclist\@empty\fi - \ifx\bbl@trace\@undefined\def\bbl@trace#1{}\fi - \expandafter\newif\csname ifbbl@single\endcsname - \chardef\bbl@bidimode\z@ +\def\languagename{english}% +\let\bbl@opt@shorthands\@nnil +\def\bbl@ifshorthand#1#2#3{#2}% +\let\bbl@language@opts\@empty +\ifx\babeloptionstrings\@undefined + \let\bbl@opt@strings\@nnil +\else + \let\bbl@opt@strings\babeloptionstrings +\fi +\def\BabelStringsDefault{generic} +\def\bbl@tempa{normal} +\ifx\babeloptionmath\bbl@tempa + \def\bbl@mathnormal{\noexpand\textormath} +\fi +\def\AfterBabelLanguage#1#2{} +\ifx\BabelModifiers\@undefined\let\BabelModifiers\relax\fi +\let\bbl@afterlang\relax +\def\bbl@opt@safe{BR} +\ifx\@uclclist\@undefined\let\@uclclist\@empty\fi +\ifx\bbl@trace\@undefined\def\bbl@trace#1{}\fi +\expandafter\newif\csname ifbbl@single\endcsname +\chardef\bbl@bidimode\z@ \fi +\def\bbl@version{3.64} +\def\bbl@date{2021/10/13} \ifx\language\@undefined \csname newcount\endcsname\language \fi \countdef\last@language=19 \def\addlanguage{\csname newlanguage\endcsname} -\def\bbl@version{3.63} -\def\bbl@date{2021/07/22} \def\adddialect#1#2{% \global\chardef#1#2\relax \bbl@usehooks{adddialect}{{#1}{#2}}% @@ -599,18 +616,7 @@ \fi \fi} \let\bbl@restorelastskip\relax -\def\bbl@savelastskip{% - \let\bbl@restorelastskip\relax - \ifvmode - \ifdim\lastskip=\z@ - \let\bbl@restorelastskip\nobreak - \else - \bbl@exp{% - \def\\\bbl@restorelastskip{% - \skip@=\the\lastskip - \\\nobreak \vskip-\skip@ \vskip\skip@}}% - \fi - \fi} +\let\bbl@savelastskip\relax \newif\ifbbl@bcpallowed \bbl@bcpallowedfalse \def\select@language#1{% from set@, babel@aux @@ -868,27 +874,6 @@ \let\textlanguage\setlocale \let\languagetext\setlocale \edef\bbl@nulllanguage{\string\language=0} -\ifx\PackageError\@undefined % TODO. Move to Plain - \def\bbl@error#1#2{% - \begingroup - \newlinechar=`\^^J - \def\\{^^J(babel) }% - \errhelp{#2}\errmessage{\\#1}% - \endgroup} - \def\bbl@warning#1{% - \begingroup - \newlinechar=`\^^J - \def\\{^^J(babel) }% - \message{\\#1}% - \endgroup} - \let\bbl@infowarn\bbl@warning - \def\bbl@info#1{% - \begingroup - \newlinechar=`\^^J - \def\\{^^J}% - \wlog{#1}% - \endgroup} -\fi \def\bbl@nocaption{\protect\bbl@nocaption@i} \def\bbl@nocaption@i#1#2{% 1: text to be printed 2: caption macro \langXname \global\@namedef{#2}{\textbf{?#1?}}% @@ -957,9 +942,13 @@ \def\bbl@exp#1{% \begingroup \let\\\noexpand - \def\<##1>{\expandafter\noexpand\csname##1\endcsname}% + \let\<\bbl@exp@en + \let\[\bbl@exp@ue \edef\bbl@exp@aux{\endgroup#1}% \bbl@exp@aux} +\def\bbl@exp@en#1>{\expandafter\noexpand\csname#1\endcsname}% +\def\bbl@exp@ue#1]{% + \unexpanded\expandafter\expandafter\expandafter{\csname#1\endcsname}}% \def\bbl@tempa#1{% \long\def\bbl@trim##1##2{% \futurelet\bbl@trim@a\bbl@trim@c##2\@nil\@nil#1\@nil\relax{##1}}% @@ -980,7 +969,7 @@ \else \expandafter\@secondoftwo \fi} - \bbl@ifunset{ifcsname}% + \bbl@ifunset{ifcsname}% TODO. A better test? {}% {\gdef\bbl@ifunset#1{% \ifcsname#1\endcsname @@ -1180,12 +1169,12 @@ \newcommand\EnableBabelHook[1]{\bbl@csarg\let{hk@#1}\@firstofone} \newcommand\DisableBabelHook[1]{\bbl@csarg\let{hk@#1}\@gobble} \def\bbl@usehooks#1#2{% - \ifx\UseHook\@undefined\else\UseHook{babel/#1}\fi + \ifx\UseHook\@undefined\else\UseHook{babel/*/#1}\fi \def\bbl@elth##1{% \bbl@cs{hk@##1}{\bbl@cs{ev@##1@#1@}#2}}% \bbl@cs{ev@#1@}% \ifx\languagename\@undefined\else % Test required for Plain (?) - \ifx\UseHook\@undefined\else\UseHook{babel/#1/\languagename}\fi + \ifx\UseHook\@undefined\else\UseHook{babel/\languagename/#1}\fi \def\bbl@elth##1{% \bbl@cs{hk@##1}{\bbl@cl{ev@##1@#1}#2}}% \bbl@cl{ev@#1}% @@ -1470,7 +1459,7 @@ \bbl@afterfi\csname#1@sh@#2@sel\endcsname \fi} \begingroup -\bbl@ifunset{ifincsname}% TODO. Ugly. Correct? +\bbl@ifunset{ifincsname}% TODO. Ugly. Correct? Only Plain? {\gdef\active@prefix#1{% \ifx\protect\@typeset@protect \else @@ -2492,9 +2481,8 @@ \ifx\bbl@KVP@captions\@nil\else \bbl@ifunset{bbl@extracaps@#2}% {\bbl@exp{\\\babelensure[exclude=\\\today]{#2}}}% - {\toks@\expandafter\expandafter\expandafter - {\csname bbl@extracaps@#2\endcsname}% - \bbl@exp{\\\babelensure[exclude=\\\today,include=\the\toks@}]{#2}}% + {\bbl@exp{\\\babelensure[exclude=\\\today, + include=\[bbl@extracaps@#2]}]{#2}}% \bbl@ifunset{bbl@ensure@\languagename}% {\bbl@exp{% \\\DeclareRobustCommand\<bbl@ensure@\languagename>[1]{% @@ -3232,24 +3220,18 @@ \else \def\bbl@patchchapter{% \global\let\bbl@patchchapter\relax + \gdef\bbl@chfmt{% + \bbl@ifunset{bbl@\bbl@chaptype fmt@\languagename}% + {\@chapapp\space\thechapter} + {\@nameuse{bbl@\bbl@chaptype fmt@\languagename}}} \bbl@add\appendix{\def\bbl@chaptype{appendix}}% Not harmful, I hope + \bbl@sreplace\ps@headings{\@chapapp\ \thechapter}{\bbl@chfmt}% + \bbl@sreplace\chaptermark{\@chapapp\ \thechapter}{\bbl@chfmt}% + \bbl@sreplace\@makechapterhead{\@chapapp\space\thechapter}{\bbl@chfmt}% \bbl@toglobal\appendix - \bbl@sreplace\ps@headings - {\@chapapp\ \thechapter}% - {\bbl@chapterformat}% \bbl@toglobal\ps@headings - \bbl@sreplace\chaptermark - {\@chapapp\ \thechapter}% - {\bbl@chapterformat}% \bbl@toglobal\chaptermark - \bbl@sreplace\@makechapterhead - {\@chapapp\space\thechapter}% - {\bbl@chapterformat}% - \bbl@toglobal\@makechapterhead - \gdef\bbl@chapterformat{% - \bbl@ifunset{bbl@\bbl@chaptype fmt@\languagename}% - {\@chapapp\space\thechapter} - {\@nameuse{bbl@\bbl@chaptype fmt@\languagename}}}} + \bbl@toglobal\@makechapterhead} \let\bbl@patchappendix\bbl@patchchapter \fi\fi\fi \ifx\@part\@undefined @@ -3257,14 +3239,12 @@ \else \def\bbl@patchpart{% \global\let\bbl@patchpart\relax - \bbl@sreplace\@part - {\partname\nobreakspace\thepart}% - {\bbl@partformat}% - \bbl@toglobal\@part \gdef\bbl@partformat{% \bbl@ifunset{bbl@partfmt@\languagename}% {\partname\nobreakspace\thepart} - {\@nameuse{bbl@partfmt@\languagename}}}} + {\@nameuse{bbl@partfmt@\languagename}}} + \bbl@sreplace\@part{\partname\nobreakspace\thepart}{\bbl@partformat}% + \bbl@toglobal\@part} \fi \let\bbl@calendar\@empty \DeclareRobustCommand\localedate[1][]{\bbl@localedate{#1}} @@ -3364,7 +3344,7 @@ \@namedef{bbl@inikv@transforms.posthyphenation}{% \bbl@transforms\babelposthyphenation} \def\bbl@transforms@aux#1#2#3,#4\relax{#1{#2}{#3}{#4}} -\begingroup +\begingroup % A hack. TODO. Don't require an specific order \catcode`\%=12 \catcode`\&=14 \gdef\bbl@transforms#1#2#3{&% @@ -3638,6 +3618,26 @@ \directlua{ Babel.ignore_pre_char = function(node) return false end }} +\@namedef{bbl@ADJ@select.write@shift}{% + \let\bbl@restorelastskip\relax + \def\bbl@savelastskip{% + \let\bbl@restorelastskip\relax + \ifvmode + \ifdim\lastskip=\z@ + \let\bbl@restorelastskip\nobreak + \else + \bbl@exp{% + \def\\\bbl@restorelastskip{% + \skip@=\the\lastskip + \\\nobreak \vskip-\skip@ \vskip\skip@}}% + \fi + \fi}} +\@namedef{bbl@ADJ@select.write@keep}{% + \let\bbl@restorelastskip\relax + \let\bbl@savelastskip\relax} +\@namedef{bbl@ADJ@select.write@omit}{% + \let\bbl@restorelastskip\relax + \def\bbl@savelastskip##1\bbl@restorelastskip{}} \ifx\directlua\@undefined\else \ifx\bbl@luapatterns\@undefined \input luababel.def |