summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/babel/babel.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/babel/babel.sty')
-rw-r--r--Master/texmf-dist/tex/generic/babel/babel.sty27
1 files changed, 22 insertions, 5 deletions
diff --git a/Master/texmf-dist/tex/generic/babel/babel.sty b/Master/texmf-dist/tex/generic/babel/babel.sty
index d1d3e3c9752..c5ce24b584f 100644
--- a/Master/texmf-dist/tex/generic/babel/babel.sty
+++ b/Master/texmf-dist/tex/generic/babel/babel.sty
@@ -32,7 +32,7 @@
%% extension |.ins|) which are part of the distribution.
%%
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
-\ProvidesPackage{babel}[2017/10/04 3.14 The Babel package]
+\ProvidesPackage{babel}[2017/11/03 3.15 The Babel package]
\@ifpackagewith{babel}{debug}
{\let\bbl@debug\@firstofone}
{\let\bbl@debug\@gobble}
@@ -47,7 +47,9 @@
\bbl@ifunset{\bbl@stripslash#1}%
{\def#1{#2}}%
{\expandafter\def\expandafter#1\expandafter{#1#2}}}
+\def\bbl@xin@{\@expandtwoargs\in@}
\def\bbl@csarg#1#2{\expandafter#1\csname bbl@#2\endcsname}%
+\def\bbl@cs#1{\csname bbl@#1\endcsname}
\def\bbl@loop#1#2#3{\bbl@@loop#1{#3}#2,\@nnil,}
\def\bbl@loopx#1#2{\expandafter\bbl@loop\expandafter#1\expandafter{#2}}
\def\bbl@@loop#1#2#3,{%
@@ -178,6 +180,8 @@
\bbl@languages
\fi
\@ifpackagewith{babel}{bidi=basic-r}{% must go before any \DeclareOption
+ \let\bbl@beforeforeign\leavevmode
+ \AtEndOfPackage{\EnableBabelHook{babel-bidi}}%
\RequirePackage{luatexbase}%
\directlua{
require('babel-bidi.lua')
@@ -246,7 +250,20 @@
\DeclareOption{safe=none}{\let\bbl@opt@safe\@empty}
\DeclareOption{safe=bib}{\def\bbl@opt@safe{B}}
\DeclareOption{safe=ref}{\def\bbl@opt@safe{R}}
-\DeclareOption{bidi=basic-r}{}
+\DeclareOption{bidi=basic-r}%
+ {\newattribute\bbl@attr@dir
+ \let\bbl@beforeforeign\leavevmode
+ \AtEndOfPackage{\EnableBabelHook{babel-bidi}}}
+\DeclareOption{bidi=default}%
+ {\let\bbl@beforeforeign\leavevmode
+ \ifcase\bbl@engine\or
+ \newattribute\bbl@attr@dir
+ \fi
+ \AtEndOfPackage{%
+ \EnableBabelHook{babel-bidi}%
+ \ifcase\bbl@engine\or\or
+ \bbl@xebidipar
+ \fi}}
\let\bbl@opt@shorthands\@nnil
\let\bbl@opt@config\@nnil
\let\bbl@opt@main\@nnil
@@ -263,7 +280,7 @@
\fi}
\let\bbl@language@opts\@empty
\DeclareOption*{%
- \@expandtwoargs\in@{\string=}{\CurrentOption}%
+ \bbl@xin@{\string=}{\CurrentOption}%
\ifin@
\expandafter\bbl@tempa\CurrentOption\bbl@tempa
\else
@@ -284,7 +301,7 @@
\def\bbl@ifshorthand#1#2#3{#3}%
\else
\def\bbl@ifshorthand#1{%
- \@expandtwoargs\in@{\string#1}{\bbl@opt@shorthands}%
+ \bbl@xin@{\string#1}{\bbl@opt@shorthands}%
\ifin@
\expandafter\@firstoftwo
\else
@@ -390,7 +407,7 @@
\edef\bbl@tempa{\@classoptionslist,\bbl@language@opts}
\let\bbl@tempc\@empty
\bbl@for\bbl@tempb\bbl@tempa{%
- \@expandtwoargs\in@{,\bbl@tempb,}{,\bbl@loaded,}%
+ \bbl@xin@{,\bbl@tempb,}{,\bbl@loaded,}%
\ifin@\edef\bbl@tempc{\bbl@tempb}\fi}
\def\bbl@tempa#1,#2\@nnil{\def\bbl@tempb{#1}}
\expandafter\bbl@tempa\bbl@loaded,\@nnil