diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/babel/babel.sty')
-rw-r--r-- | Master/texmf-dist/tex/generic/babel/babel.sty | 30 |
1 files changed, 27 insertions, 3 deletions
diff --git a/Master/texmf-dist/tex/generic/babel/babel.sty b/Master/texmf-dist/tex/generic/babel/babel.sty index bc61531bafb..b4d8860a7a4 100644 --- a/Master/texmf-dist/tex/generic/babel/babel.sty +++ b/Master/texmf-dist/tex/generic/babel/babel.sty @@ -33,7 +33,7 @@ %% \NeedsTeXFormat{LaTeX2e}[2005/12/01] -\ProvidesPackage{babel}[2019/05/04 3.31 The Babel package] +\ProvidesPackage{babel}[2019/06/03 3.32 The Babel package] \@ifpackagewith{babel}{debug} {\providecommand\bbl@trace[1]{\message{^^J[ #1 ]}}% \let\bbl@debug\@firstofone} @@ -138,6 +138,22 @@ \fi}% \expandafter\bbl@replace@aux#1#2\bbl@nil#2% \edef#1{\the\toks@}} +\expandafter\def\expandafter\bbl@parsedef\detokenize{macro:}#1->#2\relax{% + \def\bbl@tempa{#1}% + \def\bbl@tempb{#2}} +\def\bbl@sreplace#1#2#3{% + \begingroup + \expandafter\bbl@parsedef\meaning#1\relax + \def\bbl@tempc{#2}% + \edef\bbl@tempc{\expandafter\strip@prefix\meaning\bbl@tempc}% + \def\bbl@tempd{#3}% + \edef\bbl@tempd{\expandafter\strip@prefix\meaning\bbl@tempd}% + \bbl@exp{\\\bbl@replace\\\bbl@tempb{\bbl@tempc}{\bbl@tempd}}% + \bbl@exp{% + \endgroup + \\\makeatletter % "internal" macros with @ are assumed + \\\scantokens{\def\\#1\bbl@tempa{\bbl@tempb}}% + \catcode64=\the\catcode64\relax}} % Restore @ \def\bbl@exp#1{% \begingroup \let\\\noexpand @@ -187,6 +203,8 @@ \bbl@languages \fi \ifodd\bbl@engine + % Harftex is evolving, so the callback is not harcoded, just in case + \def\bbl@harfpreline{Harf pre_linebreak_filter callback}% \def\bbl@activate@preotf{% \let\bbl@activate@preotf\relax % only once \directlua{ @@ -219,13 +237,19 @@ Babel.pre_otfload_v, 'Babel.pre_otfload_v', luatexbase.priority_in_callback('pre_linebreak_filter', - 'luaotfload.node_processor') or nil) + '\bbl@harfpreline') + or 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) + '\bbl@harfpreline') + or luatexbase.priority_in_callback('hpack_filter', + 'luaotfload.node_processor') + or nil) }} \let\bbl@tempa\relax \@ifpackagewith{babel}{bidi=basic}% |