diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/babel/babel.def')
-rw-r--r-- | Master/texmf-dist/tex/generic/babel/babel.def | 105 |
1 files changed, 68 insertions, 37 deletions
diff --git a/Master/texmf-dist/tex/generic/babel/babel.def b/Master/texmf-dist/tex/generic/babel/babel.def index d655e4faa53..5fe9abb09e7 100644 --- a/Master/texmf-dist/tex/generic/babel/babel.def +++ b/Master/texmf-dist/tex/generic/babel/babel.def @@ -41,7 +41,7 @@ \wlog{File: #1 #4 #3 <#2>}% \let\ProvidesFile\@undefined} \fi -\ProvidesFile{babel.def}[2019/09/27 3.34 Babel common definitions] +\ProvidesFile{babel.def}[2019/10/15 3.35 Babel common definitions] \ifx\AtBeginDocument\@undefined \input plain.def\relax \fi @@ -141,24 +141,26 @@ \bbl@tempa{ } \long\def\bbl@trim@i#1\@nil#2\relax#3{#3{#1}} \long\def\bbl@trim@def#1{\bbl@trim{\def#1}} -\def\bbl@ifunset#1{% - \expandafter\ifx\csname#1\endcsname\relax - \expandafter\@firstoftwo - \else - \expandafter\@secondoftwo - \fi} -\bbl@ifunset{ifcsname}% - {}% - {\def\bbl@ifunset#1{% - \ifcsname#1\endcsname - \expandafter\ifx\csname#1\endcsname\relax - \bbl@afterelse\expandafter\@firstoftwo +\begingroup + \gdef\bbl@ifunset#1{% + \expandafter\ifx\csname#1\endcsname\relax + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + \bbl@ifunset{ifcsname}% + {}% + {\gdef\bbl@ifunset#1{% + \ifcsname#1\endcsname + \expandafter\ifx\csname#1\endcsname\relax + \bbl@afterelse\expandafter\@firstoftwo + \else + \bbl@afterfi\expandafter\@secondoftwo + \fi \else - \bbl@afterfi\expandafter\@secondoftwo - \fi - \else - \expandafter\@firstoftwo - \fi}} + \expandafter\@firstoftwo + \fi}} +\endgroup \def\bbl@ifblank#1{% \bbl@ifblank@i#1\@nil\@nil\@secondoftwo\@firstoftwo\@nil} \long\def\bbl@ifblank@i#1#2\@nil#3#4#5\@nil{#4} @@ -567,16 +569,34 @@ \else \bbl@afterfi\csname#1@sh@#2@sel\endcsname \fi} -\def\active@prefix#1{% - \ifx\protect\@typeset@protect - \else - \ifx\protect\@unexpandable@protect - \noexpand#1% - \else - \protect#1% - \fi - \expandafter\@gobble - \fi} +\begingroup +\bbl@ifunset{ifincsname}% + {\gdef\active@prefix#1{% + \ifx\protect\@typeset@protect + \else + \ifx\protect\@unexpandable@protect + \noexpand#1% + \else + \protect#1% + \fi + \expandafter\@gobble + \fi}} + {\gdef\active@prefix#1{% + \ifincsname + \string#1% + \expandafter\@gobble + \else + \ifx\protect\@typeset@protect + \else + \ifx\protect\@unexpandable@protect + \noexpand#1% + \else + \protect#1% + \fi + \expandafter\expandafter\expandafter\@gobble + \fi + \fi}} +\endgroup \newif\if@safe@actives \@safe@activesfalse \def\bbl@restore@actives{\if@safe@actives\@safe@activesfalse\fi} @@ -1371,7 +1391,13 @@ \let\bbl@KVP@mapdigits\@nil \let\bbl@KVP@intraspace\@nil \let\bbl@KVP@intrapenalty\@nil - \bbl@forkv{#1}{\bbl@csarg\def{KVP@##1}{##2}}% TODO - error handling + \bbl@forkv{#1}{% TODO - error handling + \in@{/}{##1}% + \ifin@ + \bbl@renewinikey##1\@@{##2}% + \else + \bbl@csarg\def{KVP@##1}{##2}% + \fi}% \ifx\bbl@KVP@import\@nil\else \bbl@exp{\\\bbl@ifblank{\bbl@KVP@import}}% {\begingroup @@ -1714,10 +1740,7 @@ % Move trims here ?? \bbl@ifunset{bbl@KVP@\bbl@section/\bbl@tempa}% {\expandafter\bbl@inireader\bbl@tempa=##2\@@}% - {\def\bbl@tempc{\expandafter\bbl@inireader\bbl@tempa=}% - \expandafter\expandafter\expandafter - \bbl@tempc\csname bbl@KVP@\bbl@section/\bbl@tempa\endcsname\@@}% - \global\bbl@csarg\let{KVP@\bbl@section/\bbl@tempa}\relax}% + {}}% \let\bbl@inireader\bbl@iniskip \bbl@info{Importing data from babel-#1.ini for \languagename}% \loop @@ -1734,9 +1757,15 @@ \@ifnextchar[\bbl@inisec{\@ifnextchar;\bbl@iniskip\bbl@inipreread}#1\@@}% ] \def\bbl@iniskip#1\@@{}% if starts with ; \def\bbl@inisec[#1]#2\@@{% if starts with opening bracket + \def\bbl@elt##1##2{\bbl@inireader##1=##2\@@}% + \@nameuse{bbl@renew@\bbl@section}% + \global\bbl@csarg\let{renew@\bbl@section}\relax \@nameuse{bbl@secpost@\bbl@section}% ends previous section \def\bbl@section{#1}% - \@nameuse{bbl@secpre@\bbl@section}% starts current section + \def\bbl@elt##1##2{% + \@namedef{bbl@KVP@#1/##1}{}}% + \@nameuse{bbl@renew@#1}% + \@nameuse{bbl@secpre@#1}% starts current section \bbl@ifunset{bbl@inikv@#1}% {\let\bbl@inireader\bbl@iniskip}% {\bbl@exp{\let\\\bbl@inireader\<bbl@inikv@#1>}}} @@ -1997,7 +2026,8 @@ \noexpand\babelsublr{\unexpanded\expandafter{\thepage}}}}% \fi} {\ifbbl@single\else - \bbl@redefine\markright#1{% + \bbl@ifunset{markright }\bbl@redefine\bbl@redefinerobust + \markright#1{% \bbl@ifblank{#1}% {\org@markright{}}% {\toks@{#1}% @@ -2009,7 +2039,8 @@ \else \def\bbl@tempc{} \fi - \bbl@redefine\markboth#1#2{% + \bbl@ifunset{markboth }\bbl@redefine\bbl@redefinerobust + \markboth#1#2{% \protected@edef\bbl@tempb##1{% \protect\foreignlanguage {\languagename}{\protect\bbl@restore@actives##1}}% @@ -2095,7 +2126,7 @@ } \@onlypreamble\substitutefontfamily \bbl@trace{Encoding and fonts} -\newcommand\BabelNonASCII{LGR,X2,OT2,OT3,OT6,LHE,LWN,LMA,LMC,LMS,LMU} +\newcommand\BabelNonASCII{LGR,X2,OT2,OT3,OT6,LHE,LWN,LMA,LMC,LMS,LMU,PU,PD1} \newcommand\BabelNonText{TS1,T3,TS3} \let\org@TeX\TeX \let\org@LaTeX\LaTeX |