diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/babel/switch.def')
-rw-r--r-- | Master/texmf-dist/tex/generic/babel/switch.def | 41 |
1 files changed, 24 insertions, 17 deletions
diff --git a/Master/texmf-dist/tex/generic/babel/switch.def b/Master/texmf-dist/tex/generic/babel/switch.def index 35901eab59e..3a0426fa3d9 100644 --- a/Master/texmf-dist/tex/generic/babel/switch.def +++ b/Master/texmf-dist/tex/generic/babel/switch.def @@ -36,7 +36,7 @@ \wlog{File: #1 #4 #3 <#2>}% \let\ProvidesFile\@undefined} \fi -\ProvidesFile{switch.def}[2017/10/04 3.14 Babel switching mechanism] +\ProvidesFile{switch.def}[2017/11/03 3.15 Babel switching mechanism] \ifx\AtBeginDocument\@undefined \input plain.def\relax \fi @@ -57,8 +57,8 @@ \countdef\last@language=19 \def\addlanguage{\alloc@9\language\chardef\@cclvi} \fi -\def\bbl@version{3.14} -\def\bbl@date{2017/10/04} +\def\bbl@version{3.15} +\def\bbl@date{2017/11/03} \def\adddialect#1#2{% \global\chardef#1#2\relax \bbl@usehooks{adddialect}{{#1}{#2}}% @@ -102,9 +102,12 @@ \xdef\bbl@language@stack{\languagename+\bbl@language@stack}} \def\bbl@pop@lang#1+#2-#3{% \edef\languagename{#1}\xdef#3{#2}} +\let\bbl@ifrestoring\@secondoftwo \def\bbl@pop@language{% \expandafter\bbl@pop@lang\bbl@language@stack-\bbl@language@stack - \expandafter\bbl@set@language\expandafter{\languagename}} + \let\bbl@ifrestoring\@firstoftwo + \expandafter\bbl@set@language\expandafter{\languagename}% + \let\bbl@ifrestoring\@secondoftwo} \expandafter\def\csname selectlanguage \endcsname#1{% \ifnum\bbl@hymapsel=\@cclv\let\bbl@hymapsel\tw@\fi \bbl@push@language @@ -150,8 +153,15 @@ \bbl@usehooks{afterreset}{}% \languageshorthands{none}% \ifcase\bbl@select@type - \csname captions#1\endcsname\relax - \csname date#1\endcsname\relax + \ifhmode + \hskip\z@skip % trick to ignore spaces + \csname captions#1\endcsname\relax + \csname date#1\endcsname\relax + \loop\ifdim\lastskip>\z@\unskip\repeat\unskip + \else + \csname captions#1\endcsname\relax + \csname date#1\endcsname\relax + \fi \fi \bbl@usehooks{beforeextras}{}% \csname extras#1\endcsname\relax @@ -242,7 +252,7 @@ \@expandtwoargs\bbl@usehooks{patterns}{{#1}{\bbl@tempa}}% \@ifundefined{bbl@hyphenation@}{}{% Can be \relax! \begingroup - \@expandtwoargs\in@{,\number\language,}{,\bbl@hyphlist}% + \bbl@xin@{,\number\language,}{,\bbl@hyphlist}% \ifin@\else \@expandtwoargs\bbl@usehooks{hyphenation}{{#1}{\bbl@tempa}}% \hyphenation{% @@ -254,17 +264,14 @@ \fi \endgroup}} \def\hyphenrules#1{% - \edef\languagename{#1}% - \bbl@fixname\languagename - \bbl@iflanguage\languagename{% - \expandafter\bbl@patterns\expandafter{\languagename}% + \edef\bbl@tempf{#1}% + \bbl@fixname\bbl@tempf + \bbl@iflanguage\bbl@tempf{% + \expandafter\bbl@patterns\expandafter{\bbl@tempf}% \languageshorthands{none}% - \expandafter\ifx\csname\languagename hyphenmins\endcsname\relax - \set@hyphenmins\tw@\thr@@\relax - \else - \expandafter\expandafter\expandafter\set@hyphenmins - \csname\languagename hyphenmins\endcsname\relax - \fi}} + \bbl@ifunset{\bbl@tempf hyphenmins}% + {\set@hyphenmins\tw@\thr@@\relax}% + {\bbl@exp{\\\set@hyphenmins\@nameuse{\bbl@tempf hyphenmins}}}}} \let\endhyphenrules\@empty \def\providehyphenmins#1#2{% \expandafter\ifx\csname #1hyphenmins\endcsname\relax |