summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/babel/babel.def
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/babel/babel.def')
-rw-r--r--Master/texmf-dist/tex/generic/babel/babel.def561
1 files changed, 281 insertions, 280 deletions
diff --git a/Master/texmf-dist/tex/generic/babel/babel.def b/Master/texmf-dist/tex/generic/babel/babel.def
index 159dfbfe35b..67ded378850 100644
--- a/Master/texmf-dist/tex/generic/babel/babel.def
+++ b/Master/texmf-dist/tex/generic/babel/babel.def
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `core')
%% This is a generated file.
%%
-%% Copyright 2012-2013 Javier Bezos and Johannes L. Braams.
+%% Copyright 2012-2014 Javier Bezos and Johannes L. Braams.
%% Copyright 1989-2008 Johannes L. Braams and any individual authors
%% listed elsewhere in this file. All rights reserved.
%%
@@ -38,7 +38,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%% File 'babel.dtx'
-%%\ProvidesFile{babel.dtx}[2014/03/17 v3.9j The Babel package]
+%%\ProvidesFile{babel.dtx}[2014/03/24 v3.9k The Babel package]
%% Babel package for LaTeX2e.
%% Copyright (C) 1989-2008 by Johannes Braams,
%% TeXniek
@@ -56,11 +56,11 @@
\wlog{File: #1 #4 #3 <#2>}%
\let\ProvidesFile\@undefined}
\fi
-\ProvidesFile{babel.def}[2014/03/17 3.9j Babel common definitions]
+\ProvidesFile{babel.def}[2014/03/24 3.9k Babel common definitions]
\ifx\AtBeginDocument\@undefined
\input plain.def\relax
\fi
-\def\bbl@tempa{3.9j}%
+\def\bbl@tempa{3.9k}%
\ifx\bbl@version\bbl@tempa\else
\input switch.def\relax
\fi
@@ -71,16 +71,18 @@
\message{I couldn't find the file language.def}
\else
\closein1
- \def\addlanguage#1#2#3#4#5{%
- \expandafter\ifx\csname lang@#1\endcsname\relax\else
- \global\expandafter\let\csname l@#1\expandafter\endcsname
- \csname lang@#1\endcsname
- \fi}%
- \input language.def
+ \begingroup
+ \def\addlanguage#1#2#3#4#5{%
+ \expandafter\ifx\csname lang@#1\endcsname\relax\else
+ \global\expandafter\let\csname l@#1\expandafter\endcsname
+ \csname lang@#1\endcsname
+ \fi}%
+ \def\uselanguage#1{}%
+ \input language.def
+ \endgroup
\fi
- \chardef\l@english\lang@USenglish
+ \chardef\l@english\z@
\fi
-\def\bbl@for#1#2#3{\bbl@loopx#1{#2}{\ifx#1\@empty\else#3\fi}}
\def\bbl@add#1#2{%
\@ifundefined{\expandafter\@gobble\string#1}%
{\def#1{#2}}%
@@ -94,15 +96,7 @@
\ifx\@nnil#3\relax\else
\def#1{#3}#2\bbl@afterfi\bbl@@loop#1{#2}%
\fi}
-\ifx\bbl@opt@strings\@undefined
- \def\bbl@opt@safe{BR}
- \let\bbl@opt@strings\@nnil
- \let\bbl@opt@shorthands\@nnil
-\fi
-\ifx\BabelModifiers\@undefined\let\BabelModifiers\relax\fi
-\ifx\bbl@afterlang\@undefined\let\bbl@afterlang\relax\fi
-\ifx\bbl@language@opts\@undefined\let\bbl@language@opts\@empty\fi
-\providecommand\AfterBabelLanguage[2]{}
+\def\bbl@for#1#2#3{\bbl@loopx#1{#2}{\ifx#1\@empty\else#3\fi}}
\def\bbl@csarg#1#2{\expandafter#1\csname bbl@#2\endcsname}%
\chardef\bbl@engine=%
\ifx\directlua\@undefined
@@ -116,6 +110,17 @@
\fi
\long\def\bbl@afterelse#1\else#2\fi{\fi#1}
\long\def\bbl@afterfi#1\fi{\fi#1}
+\def\addto#1#2{%
+ \ifx#1\@undefined
+ \def#1{#2}%
+ \else
+ \ifx#1\relax
+ \def#1{#2}%
+ \else
+ {\toks@\expandafter{#1#2}%
+ \xdef#1{\the\toks@}}%
+ \fi
+ \fi}
\def\bbl@withactive#1#2{%
\begingroup
\lccode`~=`#2\relax
@@ -142,11 +147,32 @@
\fi
\expandafter\def\csname\bbl@tempa\space\endcsname}
\@onlypreamble\bbl@redefinerobust
+\def\AddBabelHook#1#2{%
+ \@ifundefined{bbl@hk@#1}{\EnableBabelHook{#1}}{}%
+ \def\bbl@tempa##1,#2=##2,##3\@empty{\def\bbl@tempb{##2}}%
+ \expandafter\bbl@tempa\bbl@evargs,#2=,\@empty
+ \@ifundefined{bbl@ev@#1@#2}%
+ {\bbl@csarg\bbl@add{ev@#2}{\bbl@elt{#1}}%
+ \bbl@csarg\newcommand}%
+ {\bbl@csarg\let{ev@#1@#2}\relax
+ \bbl@csarg\newcommand}%
+ {ev@#1@#2}[\bbl@tempb]}
+\def\EnableBabelHook#1{\bbl@csarg\let{hk@#1}\@firstofone}
+\def\DisableBabelHook#1{\bbl@csarg\let{hk@#1}\@gobble}
+\def\bbl@usehooks#1#2{%
+ \def\bbl@elt##1{%
+ \@nameuse{bbl@hk@##1}{\@nameuse{bbl@ev@##1@#1}#2}}%
+ \@nameuse{bbl@ev@#1}}
+\def\bbl@evargs{,% don't delete the comma
+ everylanguage=1,loadkernel=1,loadpatterns=1,loadexceptions=1,%
+ adddialect=2,patterns=2,defaultcommands=0,encodedcommands=2,write=0,%
+ beforeextras=0,afterextras=0,stopcommands=0,stringprocess=0,%
+ hyphenation=2,initiateactive=3,afterreset=0}
\newcommand\babelensure[2][]{%
\AddBabelHook{babel-ensure}{afterextras}{%
\ifcase\bbl@select@type
\@nameuse{bbl@e@\languagename}%
- \fi}
+ \fi}%
\begingroup
\let\bbl@ens@include\@empty
\let\bbl@ens@exclude\@empty
@@ -156,7 +182,7 @@
\edef\bbl@tempa{\bbl@tempb#1\@empty}%
\def\bbl@tempb##1=##2\@@{\@namedef{bbl@ens@##1}{##2}}%
\bbl@for\bbl@tempa\bbl@tempa{\expandafter\bbl@tempb\bbl@tempa\@@}%
- \def\bbl@tempc{\bbl@ensure}
+ \def\bbl@tempc{\bbl@ensure}%
\expandafter\bbl@add\expandafter\bbl@tempc\expandafter{%
\expandafter{\bbl@ens@include}}%
\expandafter\bbl@add\expandafter\bbl@tempc\expandafter{%
@@ -164,27 +190,33 @@
\toks@\expandafter{\bbl@tempc}%
\edef\x{%
\endgroup
- \noexpand\@namedef{bbl@e@#2}{\the\toks@{\bbl@ens@fontenc}}}
+ \noexpand\@namedef{bbl@e@#2}{\the\toks@{\bbl@ens@fontenc}}}%
\x}
\def\bbl@ensure#1#2#3{%
- \def\bbl@tempb##1{%
+ \def\bbl@tempb##1{% elt for \bbl@ensured list
\ifx##1\@empty\else
\in@{##1}{#2}%
\ifin@\else
\toks@\expandafter{##1}%
+ \edef\bbl@tempa{%
+ \noexpand\DeclareRobustCommand
+ \bbl@csarg\noexpand{ensure@\languagename}[1]{%
+ \noexpand\foreignlanguage{\languagename}%
+ {\ifx\relax#3\else
+ \noexpand\fontencoding{#3}\noexpand\selectfont
+ \fi
+ ########1}}}%
+ \bbl@tempa
\edef##1{%
- \noexpand\foreignlanguage{\languagename}%
- {\ifx\relax#3\else
- \noexpand\fontencoding{#3}\noexpand\selectfont
- \fi
- \the\toks@}}%
+ \bbl@csarg\noexpand{ensure@\languagename}%
+ {\the\toks@}}
\fi
\expandafter\bbl@tempb
\fi}%
\expandafter\bbl@tempb\bbl@ensured\@empty
- \def\bbl@tempa##1{%
+ \def\bbl@tempa##1{% elt for include list
\ifx##1\@empty\else
- \expandafter\in@\expandafter\foreignlanguage\expandafter{##1}%
+ \bbl@csarg\in@{ensure@\languagename\expandafter}\expandafter{##1}%
\ifin@\else
\bbl@tempb##1\@empty
\fi
@@ -550,6 +582,9 @@
\pr@@@s
{\bbl@if@primes*^\pr@@@t\egroup}}}
\endgroup
+\initiate@active@char{~}
+\declare@shorthand{system}{~}{\leavevmode\nobreak\ }
+\bbl@activate{~}
\expandafter\def\csname OT1dqpos\endcsname{127}
\expandafter\def\csname T1dqpos\endcsname{4}
\ifx\f@encoding\@undefined
@@ -660,17 +695,6 @@
\let\bbl@nonfrenchspacing\nonfrenchspacing
\fi}
\let\bbl@nonfrenchspacing\nonfrenchspacing
-\def\addto#1#2{%
- \ifx#1\@undefined
- \def#1{#2}%
- \else
- \ifx#1\relax
- \def#1{#2}%
- \else
- {\toks@\expandafter{#1#2}%
- \xdef#1{\the\toks@}}%
- \fi
- \fi}
\def\babeltags#1{%
\edef\bbl@tempa{\zap@space#1 \@empty}%
\def\bbl@tempb##1=##2\@@{%
@@ -749,173 +773,16 @@
\def\bbl@hy@empty{\hskip\z@skip}
\def\bbl@hy@@empty{\discretionary{}{}{}}
\def\bbl@disc#1#2{\nobreak\discretionary{#2-}{}{#1}\bbl@allowhyphens}
-\def\set@low@box#1{\setbox\tw@\hbox{,}\setbox\z@\hbox{#1}%
- \dimen\z@\ht\z@ \advance\dimen\z@ -\ht\tw@%
- \setbox\z@\hbox{\lower\dimen\z@ \box\z@}\ht\z@\ht\tw@ \dp\z@\dp\tw@}
-\def\save@sf@q#1{\leavevmode
- \begingroup
- \edef\@SF{\spacefactor\the\spacefactor}#1\@SF
- \endgroup}
-\ProvideTextCommand{\quotedblbase}{OT1}{%
- \save@sf@q{\set@low@box{\textquotedblright\/}%
- \box\z@\kern-.04em\bbl@allowhyphens}}
-\ProvideTextCommandDefault{\quotedblbase}{%
- \UseTextSymbol{OT1}{\quotedblbase}}
-\ProvideTextCommand{\quotesinglbase}{OT1}{%
- \save@sf@q{\set@low@box{\textquoteright\/}%
- \box\z@\kern-.04em\bbl@allowhyphens}}
-\ProvideTextCommandDefault{\quotesinglbase}{%
- \UseTextSymbol{OT1}{\quotesinglbase}}
-\ProvideTextCommand{\guillemotleft}{OT1}{%
- \ifmmode
- \ll
- \else
- \save@sf@q{\nobreak
- \raise.2ex\hbox{$\scriptscriptstyle\ll$}\bbl@allowhyphens}%
- \fi}
-\ProvideTextCommand{\guillemotright}{OT1}{%
- \ifmmode
- \gg
- \else
- \save@sf@q{\nobreak
- \raise.2ex\hbox{$\scriptscriptstyle\gg$}\bbl@allowhyphens}%
- \fi}
-\ProvideTextCommandDefault{\guillemotleft}{%
- \UseTextSymbol{OT1}{\guillemotleft}}
-\ProvideTextCommandDefault{\guillemotright}{%
- \UseTextSymbol{OT1}{\guillemotright}}
-\ProvideTextCommand{\guilsinglleft}{OT1}{%
- \ifmmode
- <%
- \else
- \save@sf@q{\nobreak
- \raise.2ex\hbox{$\scriptscriptstyle<$}\bbl@allowhyphens}%
- \fi}
-\ProvideTextCommand{\guilsinglright}{OT1}{%
- \ifmmode
- >%
- \else
- \save@sf@q{\nobreak
- \raise.2ex\hbox{$\scriptscriptstyle>$}\bbl@allowhyphens}%
- \fi}
-\ProvideTextCommandDefault{\guilsinglleft}{%
- \UseTextSymbol{OT1}{\guilsinglleft}}
-\ProvideTextCommandDefault{\guilsinglright}{%
- \UseTextSymbol{OT1}{\guilsinglright}}
-\DeclareTextCommand{\ij}{OT1}{%
- i\kern-0.02em\bbl@allowhyphens j}
-\DeclareTextCommand{\IJ}{OT1}{%
- I\kern-0.02em\bbl@allowhyphens J}
-\DeclareTextCommand{\ij}{T1}{\char188}
-\DeclareTextCommand{\IJ}{T1}{\char156}
-\ProvideTextCommandDefault{\ij}{%
- \UseTextSymbol{OT1}{\ij}}
-\ProvideTextCommandDefault{\IJ}{%
- \UseTextSymbol{OT1}{\IJ}}
-\def\crrtic@{\hrule height0.1ex width0.3em}
-\def\crttic@{\hrule height0.1ex width0.33em}
-\def\ddj@{%
- \setbox0\hbox{d}\dimen@=\ht0
- \advance\dimen@1ex
- \dimen@.45\dimen@
- \dimen@ii\expandafter\rem@pt\the\fontdimen\@ne\font\dimen@
- \advance\dimen@ii.5ex
- \leavevmode\rlap{\raise\dimen@\hbox{\kern\dimen@ii\vbox{\crrtic@}}}}
-\def\DDJ@{%
- \setbox0\hbox{D}\dimen@=.55\ht0
- \dimen@ii\expandafter\rem@pt\the\fontdimen\@ne\font\dimen@
- \advance\dimen@ii.15ex % correction for the dash position
- \advance\dimen@ii-.15\fontdimen7\font % correction for cmtt font
- \dimen\thr@@\expandafter\rem@pt\the\fontdimen7\font\dimen@
- \leavevmode\rlap{\raise\dimen@\hbox{\kern\dimen@ii\vbox{\crttic@}}}}
-\DeclareTextCommand{\dj}{OT1}{\ddj@ d}
-\DeclareTextCommand{\DJ}{OT1}{\DDJ@ D}
-\ProvideTextCommandDefault{\dj}{%
- \UseTextSymbol{OT1}{\dj}}
-\ProvideTextCommandDefault{\DJ}{%
- \UseTextSymbol{OT1}{\DJ}}
-\DeclareTextCommand{\SS}{OT1}{SS}
-\ProvideTextCommandDefault{\SS}{\UseTextSymbol{OT1}{\SS}}
-\ProvideTextCommand{\glq}{OT1}{%
- \textormath{\quotesinglbase}{\mbox{\quotesinglbase}}}
-\ProvideTextCommand{\glq}{T1}{%
- \textormath{\quotesinglbase}{\mbox{\quotesinglbase}}}
-\ProvideTextCommandDefault{\glq}{\UseTextSymbol{OT1}\glq}
-\ProvideTextCommand{\grq}{T1}{%
- \textormath{\textquoteleft}{\mbox{\textquoteleft}}}
-\ProvideTextCommand{\grq}{OT1}{%
- \save@sf@q{\kern-.0125em%
- \textormath{\textquoteleft}{\mbox{\textquoteleft}}%
- \kern.07em\relax}}
-\ProvideTextCommandDefault{\grq}{\UseTextSymbol{OT1}\grq}
-\ProvideTextCommand{\glqq}{OT1}{%
- \textormath{\quotedblbase}{\mbox{\quotedblbase}}}
-\ProvideTextCommand{\glqq}{T1}{%
- \textormath{\quotedblbase}{\mbox{\quotedblbase}}}
-\ProvideTextCommandDefault{\glqq}{\UseTextSymbol{OT1}\glqq}
-\ProvideTextCommand{\grqq}{T1}{%
- \textormath{\textquotedblleft}{\mbox{\textquotedblleft}}}
-\ProvideTextCommand{\grqq}{OT1}{%
- \save@sf@q{\kern-.07em%
- \textormath{\textquotedblleft}{\mbox{\textquotedblleft}}%
- \kern.07em\relax}}
-\ProvideTextCommandDefault{\grqq}{\UseTextSymbol{OT1}\grqq}
-\ProvideTextCommand{\flq}{OT1}{%
- \textormath{\guilsinglleft}{\mbox{\guilsinglleft}}}
-\ProvideTextCommand{\flq}{T1}{%
- \textormath{\guilsinglleft}{\mbox{\guilsinglleft}}}
-\ProvideTextCommandDefault{\flq}{\UseTextSymbol{OT1}\flq}
-\ProvideTextCommand{\frq}{OT1}{%
- \textormath{\guilsinglright}{\mbox{\guilsinglright}}}
-\ProvideTextCommand{\frq}{T1}{%
- \textormath{\guilsinglright}{\mbox{\guilsinglright}}}
-\ProvideTextCommandDefault{\frq}{\UseTextSymbol{OT1}\frq}
-\ProvideTextCommand{\flqq}{OT1}{%
- \textormath{\guillemotleft}{\mbox{\guillemotleft}}}
-\ProvideTextCommand{\flqq}{T1}{%
- \textormath{\guillemotleft}{\mbox{\guillemotleft}}}
-\ProvideTextCommandDefault{\flqq}{\UseTextSymbol{OT1}\flqq}
-\ProvideTextCommand{\frqq}{OT1}{%
- \textormath{\guillemotright}{\mbox{\guillemotright}}}
-\ProvideTextCommand{\frqq}{T1}{%
- \textormath{\guillemotright}{\mbox{\guillemotright}}}
-\ProvideTextCommandDefault{\frqq}{\UseTextSymbol{OT1}\frqq}
-\def\umlauthigh{%
- \def\bbl@umlauta##1{\leavevmode\bgroup%
- \expandafter\accent\csname\f@encoding dqpos\endcsname
- ##1\bbl@allowhyphens\egroup}%
- \let\bbl@umlaute\bbl@umlauta}
-\def\umlautlow{%
- \def\bbl@umlauta{\protect\lower@umlaut}}
-\def\umlautelow{%
- \def\bbl@umlaute{\protect\lower@umlaut}}
-\umlauthigh
-\expandafter\ifx\csname U@D\endcsname\relax
- \csname newdimen\endcsname\U@D
-\fi
-\def\lower@umlaut#1{%
- \leavevmode\bgroup
- \U@D 1ex%
- {\setbox\z@\hbox{%
- \expandafter\char\csname\f@encoding dqpos\endcsname}%
- \dimen@ -.45ex\advance\dimen@\ht\z@
- \ifdim 1ex<\dimen@ \fontdimen5\font\dimen@ \fi}%
- \expandafter\accent\csname\f@encoding dqpos\endcsname
- \fontdimen5\font\U@D #1%
- \egroup}
-\AtBeginDocument{%
- \DeclareTextCompositeCommand{\"}{OT1}{a}{\bbl@umlauta{a}}%
- \DeclareTextCompositeCommand{\"}{OT1}{e}{\bbl@umlaute{e}}%
- \DeclareTextCompositeCommand{\"}{OT1}{i}{\bbl@umlaute{\i}}%
- \DeclareTextCompositeCommand{\"}{OT1}{\i}{\bbl@umlaute{\i}}%
- \DeclareTextCompositeCommand{\"}{OT1}{o}{\bbl@umlauta{o}}%
- \DeclareTextCompositeCommand{\"}{OT1}{u}{\bbl@umlauta{u}}%
- \DeclareTextCompositeCommand{\"}{OT1}{A}{\bbl@umlauta{A}}%
- \DeclareTextCompositeCommand{\"}{OT1}{E}{\bbl@umlaute{E}}%
- \DeclareTextCompositeCommand{\"}{OT1}{I}{\bbl@umlaute{I}}%
- \DeclareTextCompositeCommand{\"}{OT1}{O}{\bbl@umlauta{O}}%
- \DeclareTextCompositeCommand{\"}{OT1}{U}{\bbl@umlauta{U}}%
-}
+\def\bbl@toglobal#1{\global\let#1#1}
+\def\bbl@recatcode#1{%
+ \@tempcnta="7F
+ \def\bbl@tempa{%
+ \ifnum\@tempcnta>"FF\else
+ \catcode\@tempcnta=#1\relax
+ \advance\@tempcnta\@ne
+ \expandafter\bbl@tempa
+ \fi}%
+ \bbl@tempa}
\def\bbl@patchuclc{%
\let\bbl@patchuclc\relax
\@ifundefined{bbl@tolower}{%
@@ -928,33 +795,20 @@
{\bbl@tolower\@empty}{\bbl@toupper\@empty}}%
\gdef\bbl@tolower{\csname\languagename @bbl@lc\endcsname}%
\gdef\bbl@toupper{\csname\languagename @bbl@uc\endcsname}}{}}%
-\def\bbl@aftercmds#1{%
- \toks@\expandafter{\bbl@scafter#1}%
- \xdef\bbl@scafter{\the\toks@}}
-\def\bbl@toglobal#1{\global\let#1#1}
-\def\bbl@recatcode#1{%
- \@tempcnta="7F
- \def\bbl@tempa{%
- \ifnum\@tempcnta>"FF\else
- \catcode\@tempcnta=#1\relax
- \advance\@tempcnta\@ne
- \expandafter\bbl@tempa
- \fi}%
- \bbl@tempa}
\@onlypreamble\StartBabelCommands
\def\StartBabelCommands{%
\begingroup
\bbl@recatcode{11}%
\def\SetStringLoop##1##2{%
- \def\bbl@templ####1{\expandafter\noexpand\csname##1\endcsname}%
- \count@\z@
- \bbl@loop\bbl@tempa{##2}{%
- \advance\count@\@ne
- \toks@\expandafter{\bbl@tempa}%
- \edef\bbl@tempb{%
- \bbl@templ{\romannumeral\count@}{\the\toks@}%
- \count@=\the\count@\relax}%
- \expandafter\SetString\bbl@tempb}}%
+ \def\bbl@templ####1{\expandafter\noexpand\csname##1\endcsname}%
+ \count@\z@
+ \bbl@loop\bbl@tempa{##2}{%
+ \advance\count@\@ne
+ \toks@\expandafter{\bbl@tempa}%
+ \edef\bbl@tempb{%
+ \bbl@templ{\romannumeral\count@}{\the\toks@}%
+ \count@=\the\count@\relax}%
+ \expandafter\SetString\bbl@tempb}}%
\newcommand\SetCase[3][]{%
\bbl@patchuclc
\bbl@forlang\bbl@tempa{%
@@ -964,6 +818,10 @@
\csname\bbl@tempa @bbl@uc\endcsname{##2}%
\expandafter\bbl@encstring
\csname\bbl@tempa @bbl@lc\endcsname{##3}}}%
+ \newcommand\SetHyphenMap[1]{%
+ \bbl@forlang\bbl@tempa{%
+ \expandafter\bbl@stringdef
+ \csname\bbl@tempa @bbl@hyphenmap\endcsname{##1}}}
\def\bbl@provstring##1##2{%
\providecommand##1{##2}%
\bbl@toglobal##1}%
@@ -1092,30 +950,24 @@
\ifx\bbl@opt@strings\relax
\def\bbl@scset#1#2{\def#1{\bbl@encoded#2}}
\bbl@patchuclc
+ \let\bbl@encoded\relax
+ \def\bbl@encoded@uclc#1{%
+ \@inmathwarn#1%
+ \expandafter\ifx\csname\cf@encoding\string#1\endcsname\relax
+ \expandafter\ifx\csname ?\string#1\endcsname\relax
+ \TextSymbolUnavailable#1%
+ \else
+ \csname ?\string#1\endcsname
+ \fi
+ \else
+ \csname\cf@encoding\string#1\endcsname
+ \fi}
\else
\def\bbl@scset#1#2{\def#1{#2}}
\fi
-\let\bbl@encoded\relax
-\def\bbl@encoded@uclc#1{%
- \@inmathwarn#1%
- \expandafter\ifx\csname\cf@encoding\string#1\endcsname\relax
- \expandafter\ifx\csname ?\string#1\endcsname\relax
- \TextSymbolUnavailable#1%
- \else
- \csname ?\string#1\endcsname
- \fi
- \else
- \csname\cf@encoding\string#1\endcsname
- \fi}
-\def\SetHyphenMap#1{%
- \bbl@forlang\bbl@tempa{%
- \expandafter\bbl@stringdef
- \csname\bbl@tempa @bbl@hyphenmap\endcsname{#1}}}
-\AtEndOfPackage{%
- \ifx\bbl@hymapopt\@undefined
- \@expandtwoargs\in@{,}{\bbl@language@opts}%
- \chardef\bbl@hymapopt\ifin@4\else\@ne\fi
- \fi}
+\def\bbl@aftercmds#1{%
+ \toks@\expandafter{\bbl@scafter#1}%
+ \xdef\bbl@scafter{\the\toks@}}
\newcommand\BabelLower[2]{% one to one.
\ifnum\lccode#1=#2\else
\babel@savevariable{\lccode#1}%
@@ -1141,26 +993,182 @@
\expandafter\bbl@tempa
\fi}%
\bbl@tempa}
-\def\AddBabelHook#1#2{%
- \@ifundefined{bbl@hk@#1}{\EnableBabelHook{#1}}{}%
- \def\bbl@tempa##1,#2=##2,##3\@empty{\def\bbl@tempb{##2}}%
- \expandafter\bbl@tempa\bbl@evargs,#2=,\@empty
- \@ifundefined{bbl@ev@#1@#2}%
- {\bbl@csarg\bbl@add{ev@#2}{\bbl@elt{#1}}%
- \bbl@csarg\newcommand}%
- {\bbl@csarg\renewcommand}%
- {ev@#1@#2}[\bbl@tempb]}
-\def\EnableBabelHook#1{\bbl@csarg\let{hk@#1}\@firstofone}
-\def\DisableBabelHook#1{\bbl@csarg\let{hk@#1}\@gobble}
-\def\bbl@usehooks#1#2{%
- \def\bbl@elt##1{%
- \@nameuse{bbl@hk@##1}{\@nameuse{bbl@ev@##1@#1}#2}}%
- \@nameuse{bbl@ev@#1}}
-\def\bbl@evargs{,% don't delete the comma
- everylanguage=1,loadkernel=1,loadpatterns=1,loadexceptions=1,%
- adddialect=2,patterns=2,defaultcommands=0,encodedcommands=2,write=0,%
- beforeextras=0,afterextras=0,stopcommands=0,stringprocess=0,%
- hyphenation=2,initiateactive=3,afterreset=0}
+\AtEndOfPackage{%
+ \ifx\bbl@hymapopt\@undefined
+ \@expandtwoargs\in@{,}{\bbl@language@opts}%
+ \chardef\bbl@hymapopt\ifin@4\else\@ne\fi
+ \fi}
+\def\set@low@box#1{\setbox\tw@\hbox{,}\setbox\z@\hbox{#1}%
+ \dimen\z@\ht\z@ \advance\dimen\z@ -\ht\tw@%
+ \setbox\z@\hbox{\lower\dimen\z@ \box\z@}\ht\z@\ht\tw@ \dp\z@\dp\tw@}
+\def\save@sf@q#1{\leavevmode
+ \begingroup
+ \edef\@SF{\spacefactor\the\spacefactor}#1\@SF
+ \endgroup}
+\ProvideTextCommand{\quotedblbase}{OT1}{%
+ \save@sf@q{\set@low@box{\textquotedblright\/}%
+ \box\z@\kern-.04em\bbl@allowhyphens}}
+\ProvideTextCommandDefault{\quotedblbase}{%
+ \UseTextSymbol{OT1}{\quotedblbase}}
+\ProvideTextCommand{\quotesinglbase}{OT1}{%
+ \save@sf@q{\set@low@box{\textquoteright\/}%
+ \box\z@\kern-.04em\bbl@allowhyphens}}
+\ProvideTextCommandDefault{\quotesinglbase}{%
+ \UseTextSymbol{OT1}{\quotesinglbase}}
+\ProvideTextCommand{\guillemotleft}{OT1}{%
+ \ifmmode
+ \ll
+ \else
+ \save@sf@q{\nobreak
+ \raise.2ex\hbox{$\scriptscriptstyle\ll$}\bbl@allowhyphens}%
+ \fi}
+\ProvideTextCommand{\guillemotright}{OT1}{%
+ \ifmmode
+ \gg
+ \else
+ \save@sf@q{\nobreak
+ \raise.2ex\hbox{$\scriptscriptstyle\gg$}\bbl@allowhyphens}%
+ \fi}
+\ProvideTextCommandDefault{\guillemotleft}{%
+ \UseTextSymbol{OT1}{\guillemotleft}}
+\ProvideTextCommandDefault{\guillemotright}{%
+ \UseTextSymbol{OT1}{\guillemotright}}
+\ProvideTextCommand{\guilsinglleft}{OT1}{%
+ \ifmmode
+ <%
+ \else
+ \save@sf@q{\nobreak
+ \raise.2ex\hbox{$\scriptscriptstyle<$}\bbl@allowhyphens}%
+ \fi}
+\ProvideTextCommand{\guilsinglright}{OT1}{%
+ \ifmmode
+ >%
+ \else
+ \save@sf@q{\nobreak
+ \raise.2ex\hbox{$\scriptscriptstyle>$}\bbl@allowhyphens}%
+ \fi}
+\ProvideTextCommandDefault{\guilsinglleft}{%
+ \UseTextSymbol{OT1}{\guilsinglleft}}
+\ProvideTextCommandDefault{\guilsinglright}{%
+ \UseTextSymbol{OT1}{\guilsinglright}}
+\DeclareTextCommand{\ij}{OT1}{%
+ i\kern-0.02em\bbl@allowhyphens j}
+\DeclareTextCommand{\IJ}{OT1}{%
+ I\kern-0.02em\bbl@allowhyphens J}
+\DeclareTextCommand{\ij}{T1}{\char188}
+\DeclareTextCommand{\IJ}{T1}{\char156}
+\ProvideTextCommandDefault{\ij}{%
+ \UseTextSymbol{OT1}{\ij}}
+\ProvideTextCommandDefault{\IJ}{%
+ \UseTextSymbol{OT1}{\IJ}}
+\def\crrtic@{\hrule height0.1ex width0.3em}
+\def\crttic@{\hrule height0.1ex width0.33em}
+\def\ddj@{%
+ \setbox0\hbox{d}\dimen@=\ht0
+ \advance\dimen@1ex
+ \dimen@.45\dimen@
+ \dimen@ii\expandafter\rem@pt\the\fontdimen\@ne\font\dimen@
+ \advance\dimen@ii.5ex
+ \leavevmode\rlap{\raise\dimen@\hbox{\kern\dimen@ii\vbox{\crrtic@}}}}
+\def\DDJ@{%
+ \setbox0\hbox{D}\dimen@=.55\ht0
+ \dimen@ii\expandafter\rem@pt\the\fontdimen\@ne\font\dimen@
+ \advance\dimen@ii.15ex % correction for the dash position
+ \advance\dimen@ii-.15\fontdimen7\font % correction for cmtt font
+ \dimen\thr@@\expandafter\rem@pt\the\fontdimen7\font\dimen@
+ \leavevmode\rlap{\raise\dimen@\hbox{\kern\dimen@ii\vbox{\crttic@}}}}
+\DeclareTextCommand{\dj}{OT1}{\ddj@ d}
+\DeclareTextCommand{\DJ}{OT1}{\DDJ@ D}
+\ProvideTextCommandDefault{\dj}{%
+ \UseTextSymbol{OT1}{\dj}}
+\ProvideTextCommandDefault{\DJ}{%
+ \UseTextSymbol{OT1}{\DJ}}
+\DeclareTextCommand{\SS}{OT1}{SS}
+\ProvideTextCommandDefault{\SS}{\UseTextSymbol{OT1}{\SS}}
+\ProvideTextCommand{\glq}{OT1}{%
+ \textormath{\quotesinglbase}{\mbox{\quotesinglbase}}}
+\ProvideTextCommand{\glq}{T1}{%
+ \textormath{\quotesinglbase}{\mbox{\quotesinglbase}}}
+\ProvideTextCommandDefault{\glq}{\UseTextSymbol{OT1}\glq}
+\ProvideTextCommand{\grq}{T1}{%
+ \textormath{\textquoteleft}{\mbox{\textquoteleft}}}
+\ProvideTextCommand{\grq}{OT1}{%
+ \save@sf@q{\kern-.0125em%
+ \textormath{\textquoteleft}{\mbox{\textquoteleft}}%
+ \kern.07em\relax}}
+\ProvideTextCommandDefault{\grq}{\UseTextSymbol{OT1}\grq}
+\ProvideTextCommand{\glqq}{OT1}{%
+ \textormath{\quotedblbase}{\mbox{\quotedblbase}}}
+\ProvideTextCommand{\glqq}{T1}{%
+ \textormath{\quotedblbase}{\mbox{\quotedblbase}}}
+\ProvideTextCommandDefault{\glqq}{\UseTextSymbol{OT1}\glqq}
+\ProvideTextCommand{\grqq}{T1}{%
+ \textormath{\textquotedblleft}{\mbox{\textquotedblleft}}}
+\ProvideTextCommand{\grqq}{OT1}{%
+ \save@sf@q{\kern-.07em%
+ \textormath{\textquotedblleft}{\mbox{\textquotedblleft}}%
+ \kern.07em\relax}}
+\ProvideTextCommandDefault{\grqq}{\UseTextSymbol{OT1}\grqq}
+\ProvideTextCommand{\flq}{OT1}{%
+ \textormath{\guilsinglleft}{\mbox{\guilsinglleft}}}
+\ProvideTextCommand{\flq}{T1}{%
+ \textormath{\guilsinglleft}{\mbox{\guilsinglleft}}}
+\ProvideTextCommandDefault{\flq}{\UseTextSymbol{OT1}\flq}
+\ProvideTextCommand{\frq}{OT1}{%
+ \textormath{\guilsinglright}{\mbox{\guilsinglright}}}
+\ProvideTextCommand{\frq}{T1}{%
+ \textormath{\guilsinglright}{\mbox{\guilsinglright}}}
+\ProvideTextCommandDefault{\frq}{\UseTextSymbol{OT1}\frq}
+\ProvideTextCommand{\flqq}{OT1}{%
+ \textormath{\guillemotleft}{\mbox{\guillemotleft}}}
+\ProvideTextCommand{\flqq}{T1}{%
+ \textormath{\guillemotleft}{\mbox{\guillemotleft}}}
+\ProvideTextCommandDefault{\flqq}{\UseTextSymbol{OT1}\flqq}
+\ProvideTextCommand{\frqq}{OT1}{%
+ \textormath{\guillemotright}{\mbox{\guillemotright}}}
+\ProvideTextCommand{\frqq}{T1}{%
+ \textormath{\guillemotright}{\mbox{\guillemotright}}}
+\ProvideTextCommandDefault{\frqq}{\UseTextSymbol{OT1}\frqq}
+\def\umlauthigh{%
+ \def\bbl@umlauta##1{\leavevmode\bgroup%
+ \expandafter\accent\csname\f@encoding dqpos\endcsname
+ ##1\bbl@allowhyphens\egroup}%
+ \let\bbl@umlaute\bbl@umlauta}
+\def\umlautlow{%
+ \def\bbl@umlauta{\protect\lower@umlaut}}
+\def\umlautelow{%
+ \def\bbl@umlaute{\protect\lower@umlaut}}
+\umlauthigh
+\expandafter\ifx\csname U@D\endcsname\relax
+ \csname newdimen\endcsname\U@D
+\fi
+\def\lower@umlaut#1{%
+ \leavevmode\bgroup
+ \U@D 1ex%
+ {\setbox\z@\hbox{%
+ \expandafter\char\csname\f@encoding dqpos\endcsname}%
+ \dimen@ -.45ex\advance\dimen@\ht\z@
+ \ifdim 1ex<\dimen@ \fontdimen5\font\dimen@ \fi}%
+ \expandafter\accent\csname\f@encoding dqpos\endcsname
+ \fontdimen5\font\U@D #1%
+ \egroup}
+\AtBeginDocument{%
+ \DeclareTextCompositeCommand{\"}{OT1}{a}{\bbl@umlauta{a}}%
+ \DeclareTextCompositeCommand{\"}{OT1}{e}{\bbl@umlaute{e}}%
+ \DeclareTextCompositeCommand{\"}{OT1}{i}{\bbl@umlaute{\i}}%
+ \DeclareTextCompositeCommand{\"}{OT1}{\i}{\bbl@umlaute{\i}}%
+ \DeclareTextCompositeCommand{\"}{OT1}{o}{\bbl@umlauta{o}}%
+ \DeclareTextCompositeCommand{\"}{OT1}{u}{\bbl@umlauta{u}}%
+ \DeclareTextCompositeCommand{\"}{OT1}{A}{\bbl@umlauta{A}}%
+ \DeclareTextCompositeCommand{\"}{OT1}{E}{\bbl@umlaute{E}}%
+ \DeclareTextCompositeCommand{\"}{OT1}{I}{\bbl@umlaute{I}}%
+ \DeclareTextCompositeCommand{\"}{OT1}{O}{\bbl@umlauta{O}}%
+ \DeclareTextCompositeCommand{\"}{OT1}{U}{\bbl@umlauta{U}}%
+}
+\ifx\l@english\@undefined
+ \chardef\l@english\z@
+\fi
+\main@language{english}
\ifcase\bbl@engine\or
\input luababel.def
\or
@@ -1441,13 +1449,6 @@
\endgroup
\if@nobreak\ifvmode\nobreak\fi\fi}
\fi
-\initiate@active@char{~}
-\declare@shorthand{system}{~}{\leavevmode\nobreak\ }
-\bbl@activate{~}
-\ifx\l@english\@undefined
- \chardef\l@english\z@
-\fi
-\main@language{english}
%%
%% \CharacterTable
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z