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.sty48
1 files changed, 39 insertions, 9 deletions
diff --git a/Master/texmf-dist/tex/generic/babel/babel.sty b/Master/texmf-dist/tex/generic/babel/babel.sty
index 2c3d5df23c5..453dc5afde1 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}[2018/02/14 3.18 The Babel package]
+\ProvidesPackage{babel}[2018/04/25 3.19 The Babel package]
\@ifpackagewith{babel}{debug}
{\providecommand\bbl@trace[1]{\message{^^J[ #1 ]}}%
\let\bbl@debug\@firstofone}
@@ -186,23 +186,49 @@
\bbl@languages
\fi
\ifodd\bbl@engine
- \@ifpackagewith{babel}{bidi=basic-r}{% must go before any \DeclareOption
+ \def\bbl@loadbidi#1{%
\let\bbl@beforeforeign\leavevmode
\AtEndOfPackage{\EnableBabelHook{babel-bidi}}%
\RequirePackage{luatexbase}%
\directlua{
require('babel-bidi.lua')
- require('babel-bidi-basic-r.lua')
+ require('babel-bidi-#1.lua')
luatexbase.add_to_callback('pre_linebreak_filter',
- Babel.pre_otfload,
- 'Babel.pre_otfload',
+ Babel.pre_otfload_v,
+ 'Babel.pre_otfload_v',
luatexbase.priority_in_callback('pre_linebreak_filter',
'luaotfload.node_processor') or nil)
luatexbase.add_to_callback('hpack_filter',
- Babel.pre_otfload,
- 'Babel.pre_otfload',
+ Babel.pre_otfload_h,
+ 'Babel.pre_otfload_h',
luatexbase.priority_in_callback('hpack_filter',
- 'luaotfload.node_processor') or nil)}}{}
+ 'luaotfload.node_processor') or nil)
+ }}
+ \let\bbl@tempa\relax
+ \@ifpackagewith{babel}{bidi=basic}%
+ {\def\bbl@tempa{basic}}%
+ {\@ifpackagewith{babel}{bidi=basic-r}%
+ {\def\bbl@tempa{basic-r}}%
+ {}}
+ \ifx\bbl@tempa\relax\else
+ \let\bbl@beforeforeign\leavevmode
+ \AtEndOfPackage{\EnableBabelHook{babel-bidi}}%
+ \RequirePackage{luatexbase}%
+ \directlua{
+ require('babel-bidi.lua')
+ require('babel-bidi-\bbl@tempa.lua')
+ luatexbase.add_to_callback('pre_linebreak_filter',
+ Babel.pre_otfload_v,
+ 'Babel.pre_otfload_v',
+ luatexbase.priority_in_callback('pre_linebreak_filter',
+ 'luaotfload.node_processor') or nil)
+ luatexbase.add_to_callback('hpack_filter',
+ Babel.pre_otfload_h,
+ 'Babel.pre_otfload_h',
+ luatexbase.priority_in_callback('hpack_filter',
+ 'luaotfload.node_processor') or nil)
+ }
+ \fi
\fi
\bbl@trace{Defining option 'base'}
\@ifpackagewith{babel}{base}{%
@@ -262,14 +288,18 @@
\DeclareOption{safe=ref}{\def\bbl@opt@safe{R}}
\ifodd\bbl@engine
\DeclareOption{bidi=basic-r}%
+ {\ExecuteOptions{bidi=basic}}
+ \DeclareOption{bidi=basic}%
{\let\bbl@beforeforeign\leavevmode
\newattribute\bbl@attr@dir
\bbl@exp{\output{\bodydir\pagedir\the\output}}%
\AtEndOfPackage{\EnableBabelHook{babel-bidi}}}
\else
\DeclareOption{bidi=basic-r}%
+ {\ExecuteOptions{bidi=basic}}
+ \DeclareOption{bidi=basic}%
{\bbl@error
- {The bidi method `basic-r' is available only in\\%
+ {The bidi method `basic' is available only in\\%
luatex. I'll continue with `bidi=default', so\\%
expect wrong results}%
{See the manual for further details.}%