summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/babel/bbunicode.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-04-23 21:51:09 +0000
committerKarl Berry <karl@freefriends.org>2016-04-23 21:51:09 +0000
commitda6b65bb297a5be593c9899327325fb4186c6ab4 (patch)
tree228b5b9588aefb0ebe8e5d7d0a12028d36ccdc6d /Master/texmf-dist/source/latex/babel/bbunicode.dtx
parentf1c3474c8b3065bd584afa1f6f8ac194959cb280 (diff)
babel[.tds.zip] (23apr16)
git-svn-id: svn://tug.org/texlive/trunk@40706 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/babel/bbunicode.dtx')
-rw-r--r--Master/texmf-dist/source/latex/babel/bbunicode.dtx58
1 files changed, 33 insertions, 25 deletions
diff --git a/Master/texmf-dist/source/latex/babel/bbunicode.dtx b/Master/texmf-dist/source/latex/babel/bbunicode.dtx
index f41054716d4..edc6b714c46 100644
--- a/Master/texmf-dist/source/latex/babel/bbunicode.dtx
+++ b/Master/texmf-dist/source/latex/babel/bbunicode.dtx
@@ -31,7 +31,7 @@
% \iffalse
%<*dtx>
\ProvidesFile{bbunicode.dtx}
- [2016/02/24 v1.1c Babel hooks for Unicode engines]
+ [2016/04/23 v3.9r Babel hooks for Unicode engines]
%</dtx>
%
%% File `bbunicode.dtx'
@@ -246,6 +246,9 @@
% \changes{bbunicode~1.1c}{2016/02/08}{Some hacks for polyglossia. To
% be improved.}
% \changes{bbunicode~1.1c}{2016/02/23}{Thoroughly revised.}
+% \changes{bbunicode~1.1d}{2016/4/22}{Lua: Fixed a line break at
+% \cs{foreignlanguage} with unloaded patterns. Added
+% \cs{babelcatcodetablenum}, just in case.}
%
% \begin{macrocode}
%<*luatex>
@@ -309,7 +312,7 @@
\ifnum#2>\z@\else
\noexpand\bbl@elt{#1}{#2}{#3}{#4}%
\fi}%
- \xdef\bbl@languages{\bbl@languages}%
+ \xdef\bbl@languages{\bbl@languages}%
\fi
\def\bbl@elt#1#2#3#4{\@namedef{zth@#1}{}} % Define flags
\bbl@languages
@@ -331,30 +334,35 @@
\fi
\endgroup
\def\bbl@get@enc#1:#2:#3\@@@{\def\bbl@hyph@enc{#2}}
+\ifx\babelcatcodetablenum\@undefined
+ \def\babelcatcodetablenum{5211}
+\fi
\def\bbl@luapatterns#1#2{%
\bbl@get@enc#1::\@@@
- \begingroup
- \ifx\catcodetable\@undefined
- \let\savecatcodetable\luatexsavecatcodetable
- \let\initcatcodetable\luatexinitcatcodetable
- \let\catcodetable\luatexcatcodetable
+ \setbox\z@\hbox\bgroup
+ \begingroup
+ \ifx\catcodetable\@undefined
+ \let\savecatcodetable\luatexsavecatcodetable
+ \let\initcatcodetable\luatexinitcatcodetable
+ \let\catcodetable\luatexcatcodetable
+ \fi
+ \savecatcodetable\babelcatcodetablenum\relax
+ \initcatcodetable\numexpr\babelcatcodetablenum+1\relax
+ \catcodetable\numexpr\babelcatcodetablenum+1\relax
+ \catcode`\#=6 \catcode`\$=3 \catcode`\&=4 \catcode`\^=7
+ \catcode`\_=8 \catcode`\{=1 \catcode`\}=2 \catcode`\~=13
+ \catcode`\@=11 \catcode`\^^I=10 \catcode`\^^J=12
+ \catcode`\<=12 \catcode`\>=12 \catcode`\*=12 \catcode`\.=12
+ \catcode`\-=12 \catcode`\/=12 \catcode`\[=12 \catcode`\]=12
+ \catcode`\`=12 \catcode`\'=12 \catcode`\"=12
+ \input #1\relax
+ \catcodetable\babelcatcodetablenum\relax
+ \endgroup
+ \def\bbl@tempa{#2}%
+ \ifx\bbl@tempa\@empty\else
+ \input #2\relax
\fi
- \savecatcodetable5211
- \initcatcodetable5212
- \catcodetable5212
- \catcode`\#=6 \catcode`\$=3 \catcode`\&=4 \catcode`\^=7
- \catcode`\_=8 \catcode`\{=1 \catcode`\}=2 \catcode`\~=13
- \catcode`\@=11 \catcode`\^^I=10 \catcode`\^^J=12
- \catcode`\<=12 \catcode`\>=12 \catcode`\*=12 \catcode`\.=12
- \catcode`\-=12 \catcode`\/=12 \catcode`\[=12 \catcode`\]=12
- \catcode`\`=12 \catcode`\'=12 \catcode`\"=12
- \input #1\relax
- \catcodetable5211
- \endgroup
- \def\bbl@tempa{#2}%
- \ifx\bbl@tempa\@empty\else
- \input #2\relax
- \fi}%
+ \egroup}%
\def\bbl@patterns@lua#1{%
\language=\expandafter\ifx\csname l@#1:\f@encoding\endcsname\relax
\csname l@#1\endcsname
@@ -371,7 +379,7 @@
\ifx\bbl@tempb\@empty\else % if not a synonymous
\def\bbl@tempc{{##3}{##4}}%
\fi
- \bbl@csarg\edef{hyphendata@##2}{\bbl@tempc}%
+ \bbl@csarg\xdef{hyphendata@##2}{\bbl@tempc}%
\fi}%
\bbl@languages
\@ifundefined{bbl@hyphendata@\the\language}%
@@ -454,7 +462,7 @@
\ifx\bbl@tempb\@empty\else % if not a synonymous
\def\bbl@tempc{{##3}{##4}}%
\fi
- \bbl@csarg\edef{hyphendata@##2}{\bbl@tempc}%
+ \bbl@csarg\xdef{hyphendata@##2}{\bbl@tempc}%
\fi}%
\bbl@languages
\@ifundefined{bbl@hyphendata@\the\language}%