summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/babel/babel.def
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-02-14 21:34:13 +0000
committerKarl Berry <karl@freefriends.org>2018-02-14 21:34:13 +0000
commit8b6cfd638559d98ab42f15ecae4afb6d754404d5 (patch)
tree65b9d0a06956be707fc0505ca551b4d2338fb9e1 /Master/texmf-dist/tex/generic/babel/babel.def
parent377d5868421b9bab3a6e0fddb02ccc99597b2855 (diff)
babel (14feb18)
git-svn-id: svn://tug.org/texlive/trunk@46640 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/babel/babel.def')
-rw-r--r--Master/texmf-dist/tex/generic/babel/babel.def72
1 files changed, 57 insertions, 15 deletions
diff --git a/Master/texmf-dist/tex/generic/babel/babel.def b/Master/texmf-dist/tex/generic/babel/babel.def
index 1d6c7c725d5..62dfa7ed7c0 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')
%%
%%
-%% Copyright (C) 2012-2017 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2018 Javier Bezos and Johannes L. Braams.
%% Copyright (C) 1989-2012 Johannes L. Braams and
%% any individual authors listed elsewhere in this file.
%% All rights reserved.
@@ -40,18 +40,36 @@
\wlog{File: #1 #4 #3 <#2>}%
\let\ProvidesFile\@undefined}
\fi
-\ProvidesFile{babel.def}[2018/01/24 3.17 Babel common definitions]
+\ProvidesFile{babel.def}[2018/02/14 3.18 Babel common definitions]
\ifx\AtBeginDocument\@undefined
\input plain.def\relax
\fi
\ifx\bbl@ifshorthand\@undefined
+ \let\bbl@opt@shorthands\@nnil
\def\bbl@ifshorthand#1#2#3{#2}%
- \def\bbl@opt@safe{BR}
+ \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
- \let\bbl@language@opts\@empty
+ \def\bbl@opt@safe{BR}
+ \ifx\@uclclist\@undefined\let\@uclclist\@empty\fi
+ \ifx\bbl@trace\@undefined\def\bbl@trace#1{}\fi
\fi
-\input switch.def\relax
+\ifx\bbl@switchflag\@undefined % Prevent double input
+ \let\bbl@switchflag\relax
+ \input switch.def\relax
+\fi
+\bbl@trace{Compatibility with language.def}
\ifx\bbl@languages\@undefined
\ifx\directlua\@undefined
\openin1 = language.def
@@ -78,6 +96,7 @@
\input luababel.def
\fi
\fi
+\bbl@trace{Basic macros}
\def\bbl@stripslash{\expandafter\@gobble\string}
\def\bbl@add#1#2{%
\bbl@ifunset{\bbl@stripslash#1}%
@@ -228,6 +247,7 @@
{\bbl@exp{\let\<org@\bbl@tempa>\<\bbl@tempa\space>}}%
\@namedef{\bbl@tempa\space}}
\@onlypreamble\bbl@redefinerobust
+\bbl@trace{Hooks}
\def\AddBabelHook#1#2{%
\bbl@ifunset{bbl@hk@#1}{\EnableBabelHook{#1}}{}%
\def\bbl@tempa##1,#2=##2,##3\@empty{\def\bbl@tempb{##2}}%
@@ -249,6 +269,7 @@
adddialect=2,patterns=2,defaultcommands=0,encodedcommands=2,write=0,%
beforeextras=0,afterextras=0,stopcommands=0,stringprocess=0,%
hyphenation=2,initiateactive=3,afterreset=0,foreign=0,foreign*=0}
+\bbl@trace{Defining babelensure}
\newcommand\babelensure[2][]{% TODO - revise test files
\AddBabelHook{babel-ensure}{afterextras}{%
\ifcase\bbl@select@type
@@ -308,6 +329,7 @@
\contentsname\listfigurename\listtablename\indexname\figurename
\tablename\partname\enclname\ccname\headtoname\pagename\seename
\alsoname\proofname\glossaryname}
+\bbl@trace{Macros for setting language files up}
\def\bbl@ldfinit{%
\let\bbl@screset\@empty
\let\BabelStrings\bbl@opt@string
@@ -366,6 +388,7 @@
\else
\select@language{#1}%
\fi}
+\bbl@trace{Shorhands}
\def\bbl@add@special#1{% 1:a macro like \", \?, etc.
\bbl@add\dospecials{\do#1}% test @sanitize = \relax, for back. compat.
\bbl@ifunset{@sanitize}{}{\bbl@add\@sanitize{\@makeother#1}}%
@@ -683,6 +706,7 @@
\ifx\f@encoding\@undefined
\def\f@encoding{OT1}
\fi
+\bbl@trace{Language attributes}
\newcommand\languageattribute[2]{%
\def\bbl@tempc{#1}%
\bbl@fixname\bbl@tempc
@@ -749,6 +773,7 @@
\def\bbl@clear@ttrib#1-#2.{%
\expandafter\let\csname#1@attr@#2\endcsname\@undefined}
\AtBeginDocument{\bbl@clear@ttribs}
+\bbl@trace{Macros for saving definitions}
\def\babel@beginsave{\babel@savecnt\z@}
\newcount\babel@savecnt
\babel@beginsave
@@ -769,6 +794,7 @@
\let\bbl@nonfrenchspacing\nonfrenchspacing
\fi}
\let\bbl@nonfrenchspacing\nonfrenchspacing
+\bbl@trace{Short tags}
\def\babeltags#1{%
\edef\bbl@tempa{\zap@space#1 \@empty}%
\def\bbl@tempb##1=##2\@@{%
@@ -783,6 +809,7 @@
\bbl@tempc}%
\bbl@for\bbl@tempa\bbl@tempa{%
\expandafter\bbl@tempb\bbl@tempa\@@}}
+\bbl@trace{Hyphens}
\@onlypreamble\babelhyphenation
\AtEndOfPackage{%
\newcommand\babelhyphenation[2][\@empty]{%
@@ -846,6 +873,7 @@
\def\bbl@hy@empty{\hskip\z@skip}
\def\bbl@hy@@empty{\discretionary{}{}{}}
\def\bbl@disc#1#2{\nobreak\discretionary{#2-}{}{#1}\bbl@allowhyphens}
+\bbl@trace{Multiencoding strings}
\def\bbl@toglobal#1{\global\let#1#1}
\def\bbl@recatcode#1{%
\@tempcnta="7F
@@ -1070,6 +1098,7 @@
\bbl@xin@{,}{\bbl@language@opts}%
\chardef\bbl@opt@hyphenmap\ifin@4\else\@ne\fi
\fi}
+\bbl@trace{Macros related to glyphs}
\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@}
@@ -1227,6 +1256,7 @@
\chardef\l@english\z@
\fi
\main@language{english}
+\bbl@trace{Bidi layout}
\providecommand\IfBabelLayout[3]{#3}%
\newcommand\BabelPatchSection[1]{%
\@ifundefined{#1}{}{%
@@ -1237,6 +1267,7 @@
\def\bbl@presec@x#1[#2]#3{%
\bbl@exp{%
\\\select@language@x{\bbl@main@language}%
+ \\\@nameuse{bbl@sspre@#1}%
\\\@nameuse{bbl@ss@#1}%
[\\\foreignlanguage{\languagename}{\unexpanded{#2}}]%
{\\\foreignlanguage{\languagename}{\unexpanded{#3}}}%
@@ -1244,10 +1275,11 @@
\def\bbl@presec@s#1#2{%
\bbl@exp{%
\\\select@language@x{\bbl@main@language}%
+ \\\@nameuse{bbl@sspre@#1}%
\\\@nameuse{bbl@ss@#1}*%
{\\\foreignlanguage{\languagename}{\unexpanded{#2}}}%
\\\select@language@x{\languagename}}}
-\IfBabelLayout{sectioning}% at begin document ???
+\IfBabelLayout{sectioning}%
{\BabelPatchSection{part}%
\BabelPatchSection{chapter}%
\BabelPatchSection{section}%
@@ -1257,6 +1289,9 @@
\BabelPatchSection{subparagraph}%
\def\babel@toc#1{%
\select@language@x{\bbl@main@language}}}{}
+\IfBabelLayout{captions}%
+ {\BabelPatchSection{caption}}{}
+\bbl@trace{Input engine specific macros}
\ifcase\bbl@engine
\input txtbabel.def
\or
@@ -1264,15 +1299,7 @@
\or
\input xebabel.def
\fi
-{\def\format{lplain}
-\ifx\fmtname\format
-\else
- \def\format{LaTeX2e}
- \ifx\fmtname\format
- \else
- \aftergroup\endinput
- \fi
-\fi}
+\bbl@trace{Creating languages and reading ini files}
\newcommand\babelprovide[2][]{%
\let\bbl@savelangname\languagename
\def\languagename{#2}%
@@ -1563,6 +1590,16 @@
\bbl@read@ini{##1}%
\endgroup}% boxed, to avoid extra spaces:
{\setbox\z@\hbox{\InputIfFileExists{babel-#1.tex}{}{}}}}
+{\def\format{lplain}
+\ifx\fmtname\format
+\else
+ \def\format{LaTeX2e}
+ \ifx\fmtname\format
+ \else
+ \aftergroup\endinput
+ \fi
+\fi}
+\bbl@trace{Cross referencing macros}
\ifx\bbl@opt@safe\@empty\else
\def\@newl@bel#1#2#3{%
{\@safe@activestrue
@@ -1640,6 +1677,7 @@
\let\org@bibcite\bibcite
\let\org@@bibitem\@bibitem
\fi
+\bbl@trace{Marks}
\IfBabelLayout{sectioning}
{\ifx\bbl@opt@headfoot\@nnil
\g@addto@macro\@resetactivechars{%
@@ -1670,6 +1708,7 @@
{\@temptokena\expandafter{\bbl@tempb{#2}}}%
\bbl@exp{\\\org@markboth{\the\toks@}{\the\@temptokena}}}
\bbl@tempc} % end \IfBabelLayout
+\bbl@trace{Preventing clashes with other packages}
\bbl@xin@{R}\bbl@opt@safe
\ifin@
\AtBeginDocument{%
@@ -1741,6 +1780,7 @@
\closeout15
}
\@onlypreamble\substitutefontfamily
+\bbl@trace{Encoding and fonts}
\newcommand\BabelNonASCII{LGR,X2,OT2,OT3,OT6,LHE,LWN,LMA,LMC,LMS,LMU,}
\let\org@TeX\TeX
\let\org@LaTeX\LaTeX
@@ -1798,6 +1838,7 @@
\else
\DeclareTextFontCommand{\textlatin}{\latintext}
\fi
+\bbl@trace{Basic (internal) bidi support}
\def\bbl@alscripts{,Arabic,Syriac,Thaana,}
\def\bbl@rscripts{%
,Imperial Aramaic,Avestan,Cypriot,Hatran,Hebrew,%
@@ -1915,6 +1956,7 @@
\bbl@severypar{\bbl@xeeverypar\the\everypar}}
\fi
\DeclareRobustCommand\babelsublr[1]{\leavevmode{\bbl@textdir\z@#1}}
+\bbl@trace{Local Language Configuration}
\ifx\loadlocalcfg\@undefined
\@ifpackagewith{babel}{noconfigs}%
{\let\loadlocalcfg\@gobble}%