[latex3-commits] [git/latex2e] master: Start \babelprovide for Plain. Improved Arabic sample. (13af68f)
Javier
javier at dante.de
Sat Jan 27 19:15:42 CET 2018
Repository : https://github.com/latex3/latex2e
On branch : master
Link : https://github.com/latex3/latex2e/commit/13af68f472372c7235e6f5d26ef5b5110bdb4c77
>---------------------------------------------------------------
commit 13af68f472372c7235e6f5d26ef5b5110bdb4c77
Author: Javier <javier at localhost>
Date: Sat Jan 27 19:15:42 2018 +0100
Start \babelprovide for Plain. Improved Arabic sample.
>---------------------------------------------------------------
13af68f472372c7235e6f5d26ef5b5110bdb4c77
required/babel/README.md | 4 +-
required/babel/babel.dtx | 188 +++++++++++++++++++++------------
required/babel/babel.ins | 2 +-
required/babel/babel.pdf | Bin 635190 -> 637146 bytes
required/babel/bbcompat.dtx | 2 +-
required/babel/samples/lua-arabic.pdf | Bin 84071 -> 81949 bytes
required/babel/samples/lua-arabic.tex | 28 +++--
7 files changed, 141 insertions(+), 83 deletions(-)
diff --git a/required/babel/README.md b/required/babel/README.md
index add1ef5..e8a58b0 100644
--- a/required/babel/README.md
+++ b/required/babel/README.md
@@ -1,4 +1,4 @@
-## Babel 3.17
+## Babel 3.17.1169
This package manages culturally-determined typographical (and other)
rules, and hyphenation patterns for a wide range of languages. Many
@@ -110,5 +110,5 @@ respective authors.
```
Javier Bezos
-2018/01/24
+2018/01/27
diff --git a/required/babel/babel.dtx b/required/babel/babel.dtx
index b846f29..1cf764e 100644
--- a/required/babel/babel.dtx
+++ b/required/babel/babel.dtx
@@ -31,7 +31,7 @@
%
% \iffalse
%<*filedriver>
-\ProvidesFile{babel.dtx}[2018/01/24 v3.17 The Babel package]
+\ProvidesFile{babel.dtx}[2018/01/27 v3.17.1169 The Babel package]
\documentclass{ltxdoc}
\GetFileInfo{babel.dtx}
\usepackage{fontspec}
@@ -3615,8 +3615,8 @@ help from Bernd Raichle, for which I am grateful.
% little bit of literate programming.
%
% \begin{macrocode}
-%<<version=3.17>>
-%<<date=2018/01/24>>
+%<<version=3.17.1169>>
+%<<date=2018/01/27>>
% \end{macrocode}
%
% \section{Tools}
@@ -3645,6 +3645,7 @@ help from Bernd Raichle, for which I am grateful.
%
% \begin{macrocode}
%<<*Basic macros>>
+\bbl at trace{Basic macros}
\def\bbl at stripslash{\expandafter\@gobble\string}
\def\bbl at add#1#2{%
\bbl at ifunset{\bbl at stripslash#1}%
@@ -4039,8 +4040,10 @@ help from Bernd Raichle, for which I am grateful.
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{babel}[<@date@> <@version@> The Babel package]
\@ifpackagewith{babel}{debug}
- {\let\bbl at debug\@firstofone}
- {\let\bbl at debug\@gobble}
+ {\providecommand\bbl at trace[1]{\message{^^J[ #1 ]}}%
+ \let\bbl at debug\@firstofone}
+ {\providecommand\bbl at trace[1]{}%
+ \let\bbl at debug\@gobble}
\input switch.def\relax
<@Load patterns in luatex@>
<@Basic macros@>
@@ -4097,6 +4100,7 @@ help from Bernd Raichle, for which I am grateful.
% rest of babel. Useful for old versions of \textsf{polyglossia}, too.
%
% \begin{macrocode}
+\bbl at trace{Defining option 'base'}
\@ifpackagewith{babel}{base}{%
\ifx\directlua\@undefined
\DeclareOption*{\bbl at patterns{\CurrentOption}}%
@@ -4126,6 +4130,7 @@ help from Bernd Raichle, for which I am grateful.
% key=value pairs}
%
% \begin{macrocode}
+\bbl at trace{key=value and another general options}
\bbl at csarg\let{tempa\expandafter}\csname opt at babel.sty\endcsname
\def\bbl at tempb#1.#2{%
#1\ifx\@empty#2\else,\bbl at afterfi\bbl at tempb#2\fi}%
@@ -4241,6 +4246,7 @@ help from Bernd Raichle, for which I am grateful.
% \changes{babel~3.9c}{2013/04/07}{Added t and c for tilde and comma}
%
% \begin{macrocode}
+\bbl at trace{Conditional loading of shorthands}
\def\bbl at sh@string#1{%
\ifx#1\@empty\else
\ifx#1t\string~%
@@ -4326,6 +4332,7 @@ help from Bernd Raichle, for which I am grateful.
% macro \cs{IfBabelLayout}}
%
% \begin{macrocode}
+\bbl at trace{Defining IfBabelLayout}
\ifx\bbl at opt@layout\@nnil
\newcommand\IfBabelLayout[3]{#3}%
\else
@@ -4355,6 +4362,7 @@ help from Bernd Raichle, for which I am grateful.
% checks (|\input| works, too, but possible errors are not catched).
%
% \begin{macrocode}
+\bbl at trace{Language options}
\let\bbl at afterlang\relax
\let\BabelModifiers\relax
\let\bbl at loaded\@empty
@@ -4564,7 +4572,7 @@ help from Bernd Raichle, for which I am grateful.
% able to switch hyphenation patterns (by default, it also inputs
% \file{switch.def}, for ``historical reasons'', but it is not
% necessary). When \file{babel.def} is loaded it checks if the current
-% version of \file{switch.def} is in the format; if not it is
+% version of \file{switch.def} is in the format; if not, it is
% loaded. A further file, \file{babel.sty}, contains \LaTeX-specific
% stuff.
%
@@ -4606,14 +4614,50 @@ help from Bernd Raichle, for which I am grateful.
<@Make sure ProvidesFile is defined@>
\ProvidesFile{babel.def}[<@date@> <@version@> Babel common definitions]
<@Load macros for plain if not LaTeX@>
+% \end{macrocode}
+%
+% The file |babel.def| expects some definitions made in the \LaTeXe{}
+% style file. So, In \LaTeX2.09 and Plain{} we must provide at least
+% some predefined values as well some tools to set them (even if not
+% all options are available). There in no package options, and
+% therefore and alternative mechanism is provided. For the moment,
+% only |\babeloptionstrings| and |\babeloptionmath| are provided,
+% which can be defined before loading \babel. |\BabelModifiers| can be
+% set too (but not sure it works).
+%
+% \begin{macrocode}
\ifx\bbl at ifshorthand\@undefined
+ \let\bbl at opt@shorthands\@nnil
+ \def\bbl at ifshorthand#1#2#3{#2}%
+ \ifx\babeloptionstrings\@undefined
+ \let\bbl at opt@strings\@nnil
+ \else
+ \let\bbl at opt@strings\babeloptionstrings
+ \fi
+ \def\bbl at tempa{normal}
+ \ifx\babeloptionmath\bbl at tempa
+ \def\bbl at mathnormal{\noexpand\textormath}
+ \fi
+ \def\BabelStringsDefault{generic}
+ \ifx\BabelModifiers\@undefined\let\BabelModifiers\relax\fi
+ \let\bbl at afterlang\relax
+ \let\bbl at language@opts\@empty
+ \ifx\@uclclist\@undefined\let\@uclclist\@empty\fi
+ \def\AfterBabelLanguage#1#2{}
+ \ifx\bbl at trace\@undefined\def\bbl at trace#1{}\fi
\def\bbl at ifshorthand#1#2#3{#2}%
\def\bbl at opt@safe{BR}
\def\AfterBabelLanguage#1#2{}
\let\bbl at afterlang\relax
\let\bbl at language@opts\@empty
\fi
+% \end{macrocode}
+%
+% And continue.
+%
+% \begin{macrocode}
\input switch.def\relax
+\bbl at trace{Compatibility with language.def}
\ifx\bbl at languages\@undefined
\ifx\directlua\@undefined
\openin1 = language.def
@@ -4768,6 +4812,7 @@ help from Bernd Raichle, for which I am grateful.
% undefined in Plain}
%
% \begin{macrocode}
+\bbl at trace{Hooks}
\def\AddBabelHook#1#2{%
\bbl at ifunset{bbl at hk@#1}{\EnableBabelHook{#1}}{}%
\def\bbl at tempa##1,#2=##2,##3\@empty{\def\bbl at tempb{##2}}%
@@ -4831,6 +4876,7 @@ help from Bernd Raichle, for which I am grateful.
% \cs{today} must be given explicitly in \cs{babelensure}}
%
% \begin{macrocode}
+\bbl at trace{Defining babelensure}
\newcommand\babelensure[2][]{% TODO - revise test files
\AddBabelHook{babel-ensure}{afterextras}{%
\ifcase\bbl at select@type
@@ -4937,6 +4983,7 @@ help from Bernd Raichle, for which I am grateful.
% Finally we check |\originalTeX|.
%
% \begin{macrocode}
+\bbl at trace{Macros for setting language files up}
\def\bbl at ldfinit{%
\let\bbl at screset\@empty
\let\BabelStrings\bbl at opt@string
@@ -5077,6 +5124,7 @@ help from Bernd Raichle, for which I am grateful.
% \changes{3.10}{2017/05/14}{Refactored. Add to \cs{nfss at catcodes} too.}
%
% \begin{macrocode}
+\bbl at trace{Shorhands}
\def\bbl at add@special#1{% 1:a macro like \", \?, etc.
\bbl at add\dospecials{\do#1}% test @sanitize = \relax, for back. compat.
\bbl at ifunset{@sanitize}{}{\bbl at add\@sanitize{\@makeother#1}}%
@@ -5956,6 +6004,7 @@ help from Bernd Raichle, for which I am grateful.
% attribute in the list.
%
% \begin{macrocode}
+\bbl at trace{Language attributes}
\newcommand\languageattribute[2]{%
\def\bbl at tempc{#1}%
\bbl at fixname\bbl at tempc
@@ -6173,6 +6222,7 @@ help from Bernd Raichle, for which I am grateful.
% zero.
%
% \begin{macrocode}
+\bbl at trace{Macros for saving definitions}
\def\babel at beginsave{\babel at savecnt\z@}
% \end{macrocode}
%
@@ -6252,6 +6302,7 @@ help from Bernd Raichle, for which I am grateful.
% \changes{babel~3.9i}{2014/02/21}{Macro \cs{babeltags} added}
%
% \begin{macrocode}
+\bbl at trace{Short tags}
\def\babeltags#1{%
\edef\bbl at tempa{\zap at space#1 \@empty}%
\def\bbl at tempb##1=##2\@@{%
@@ -6283,6 +6334,7 @@ help from Bernd Raichle, for which I am grateful.
% \changes{babel~3.9a}{2012/08/28}{Macro added}
%
% \begin{macrocode}
+\bbl at trace{Hyphens}
\@onlypreamble\babelhyphenation
\AtEndOfPackage{%
\newcommand\babelhyphenation[2][\@empty]{%
@@ -6438,6 +6490,7 @@ help from Bernd Raichle, for which I am grateful.
% variable. This is not the best solution, but it works.
%
% \begin{macrocode}
+\bbl at trace{Multiencoding strings}
\def\bbl at toglobal#1{\global\let#1#1}
\def\bbl at recatcode#1{%
\@tempcnta="7F
@@ -6866,6 +6919,7 @@ help from Bernd Raichle, for which I am grateful.
% the comma. It prepares its argument in box register~0.
%
% \begin{macrocode}
+\bbl at trace{Macros related to glyphs}
\def\set at 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@}
@@ -7334,6 +7388,7 @@ help from Bernd Raichle, for which I am grateful.
% least a tool useful in general.
%
% \begin{macrocode}
+\bbl at trace{Bidi layout}
\providecommand\IfBabelLayout[3]{#3}%
\newcommand\BabelPatchSection[1]{%
\@ifundefined{#1}{}{%
@@ -7369,6 +7424,7 @@ help from Bernd Raichle, for which I am grateful.
% Now we load definition files for engines.
%
% \begin{macrocode}
+\bbl at trace{Input engine specific macros}
\ifcase\bbl at engine
\input txtbabel.def
\or
@@ -7378,32 +7434,6 @@ help from Bernd Raichle, for which I am grateful.
\fi
% \end{macrocode}
%
-% \section{The kernel of Babel (\texttt{babel.def}, only \LaTeX)}
-%
-% \subsection{The redefinition of the style commands}
-%
-% The rest of the code in this file can only be processed by
-% \LaTeX, so we check the current format. If it is plain \TeX,
-% processing should stop here. But, because of the need to limit
-% the scope of the definition of |\format|, a macro that is used
-% locally in the following |\if|~statement, this comparison is done
-% inside a group. To prevent \TeX\ from complaining about an
-% unclosed group, the processing of the command |\endinput| is
-% deferred until after the group is closed. This is accomplished by
-% the command |\aftergroup|.
-%
-% \begin{macrocode}
-{\def\format{lplain}
-\ifx\fmtname\format
-\else
- \def\format{LaTeX2e}
- \ifx\fmtname\format
- \else
- \aftergroup\endinput
- \fi
-\fi}
-% \end{macrocode}
-%
% \subsection{Creating languages}
%
% |\babelprovide| is a general purpose tool for creating
@@ -7422,6 +7452,7 @@ help from Bernd Raichle, for which I am grateful.
%
%
% \begin{macrocode}
+\bbl at trace{Creating languages and reading ini files}
\newcommand\babelprovide[2][]{%
\let\bbl at savelangname\languagename
\def\languagename{#2}%
@@ -7809,6 +7840,32 @@ help from Bernd Raichle, for which I am grateful.
{\setbox\z@\hbox{\InputIfFileExists{babel-#1.tex}{}{}}}}
% \end{macrocode}
%
+% \section{The kernel of Babel (\texttt{babel.def}, only \LaTeX)}
+%
+% \subsection{The redefinition of the style commands}
+%
+% The rest of the code in this file can only be processed by
+% \LaTeX, so we check the current format. If it is plain \TeX,
+% processing should stop here. But, because of the need to limit
+% the scope of the definition of |\format|, a macro that is used
+% locally in the following |\if|~statement, this comparison is done
+% inside a group. To prevent \TeX\ from complaining about an
+% unclosed group, the processing of the command |\endinput| is
+% deferred until after the group is closed. This is accomplished by
+% the command |\aftergroup|.
+%
+% \begin{macrocode}
+{\def\format{lplain}
+\ifx\fmtname\format
+\else
+ \def\format{LaTeX2e}
+ \ifx\fmtname\format
+ \else
+ \aftergroup\endinput
+ \fi
+\fi}
+% \end{macrocode}
+%
% \subsection{Cross referencing macros}
%
% The \LaTeX\ book states:
@@ -7866,6 +7923,7 @@ help from Bernd Raichle, for which I am grateful.
% arguments immediately expands to its non-active self.
%
% \begin{macrocode}
+\bbl at trace{Cross referencing macros}
\ifx\bbl at opt@safe\@empty\else
\def\@newl at bel#1#2#3{%
{\@safe at activestrue
@@ -8164,6 +8222,7 @@ help from Bernd Raichle, for which I am grateful.
% \cs{@safe at activestrue} is in effect.
%
% \begin{macrocode}
+\bbl at trace{Marks}
\IfBabelLayout{sectioning}
{\ifx\bbl at opt@headfoot\@nnil
\g at addto@macro\@resetactivechars{%
@@ -8260,6 +8319,7 @@ help from Bernd Raichle, for which I am grateful.
% time.
%
% \begin{macrocode}
+\bbl at trace{Preventing clashes with other packages}
\bbl at xin@{R}\bbl at opt@safe
\ifin@
\AtBeginDocument{%
@@ -8500,6 +8560,7 @@ help from Bernd Raichle, for which I am grateful.
% executed only with LaTeX}
%
% \begin{macrocode}
+\bbl at trace{Encoding and fonts}
\newcommand\BabelNonASCII{LGR,X2,OT2,OT3,OT6,LHE,LWN,LMA,LMC,LMS,LMU,}
\let\org at TeX\TeX
\let\org at LaTeX\LaTeX
@@ -8616,9 +8677,21 @@ help from Bernd Raichle, for which I am grateful.
%
% \subsection{Basic bidi support}
%
-% \textbf{Work in progress.} This code is currently placed here for
-% practical reasons. It is loosely based on |rlbabel.def|, but most
-% of it has been developed from scratch.
+% \textbf{Work in progress.} This code is currently placed here for
+% practical reasons.
+%
+% It is loosely based on |rlbabel.def|, but most of it has been
+% developed from scratch. This \babel{} module (by Johannes Braams and
+% Boris Lavva) has served the purpose of typesetting R documents for
+% two decades, and despite its flaws I think is still a good starting
+% point (some parts have been copied here almost verbatim), partly
+% thanks to its simplicity.
+%
+% There are two ways of modifying macros to make them “bidi”, namely,
+% by patching the internal low level macros (which is what I have done
+% with lists, columns, counters, tocs, much like |rlbabel| did), and
+% by introducing a “middle layer” just below the user interface
+% (sectioning, footnotes).
%
% \begin{itemize}
% \item pdftex provides a minimal support for bidi text, and it
@@ -8644,6 +8717,7 @@ help from Bernd Raichle, for which I am grateful.
% \changes{3.15}{2017/10/30}{Store direction in @wdir@<lang>.}
%
% \begin{macrocode}
+\bbl at trace{Basic (internal) bidi support}
\def\bbl at alscripts{,Arabic,Syriac,Thaana,}
\def\bbl at rscripts{%
,Imperial Aramaic,Avestan,Cypriot,Hatran,Hebrew,%
@@ -8795,6 +8869,7 @@ help from Bernd Raichle, for which I am grateful.
% of |\loadlocalcfg| from \file{plain.def}.
%
% \begin{macrocode}
+\bbl at trace{Local Language Configuration}
\ifx\loadlocalcfg\@undefined
\@ifpackagewith{babel}{noconfigs}%
{\let\loadlocalcfg\@gobble}%
@@ -8850,6 +8925,7 @@ help from Bernd Raichle, for which I am grateful.
% \begin{macrocode}
\def\bbl at version{<@version@>}
\def\bbl at date{<@date@>}
+\bbl at trace{Some switching tools}
\def\adddialect#1#2{%
\global\chardef#1#2\relax
\bbl at usehooks{adddialect}{{#1}{#2}}%
@@ -8949,6 +9025,7 @@ help from Bernd Raichle, for which I am grateful.
% the selection method: 0 is select, 1 is foreign}
%
% \begin{macrocode}
+\bbl at trace{Language selectors}
\let\bbl at select@type\z@
\edef\selectlanguage{%
\noexpand\protect
@@ -9423,6 +9500,7 @@ help from Bernd Raichle, for which I am grateful.
% the latter to mark they must not be set again.
%
% \begin{macrocode}
+\bbl at trace{Switching patterns}
\let\bbl at hyphlist\@empty
\let\bbl at hyphenation@\relax
\let\bbl at pttnlist\@empty
@@ -9629,6 +9707,7 @@ help from Bernd Raichle, for which I am grateful.
% duplicating each predefined message}
%
% \begin{macrocode}
+\bbl at trace{Errors, warnings}
\edef\bbl at nulllanguage{\string\language=0}
\ifx\PackageError\@undefined
\def\bbl at error#1#2{%
@@ -10179,6 +10258,7 @@ help from Bernd Raichle, for which I am grateful.
%
% \begin{macrocode}
%<<*Font selection>>
+\bbl at trace{Font handling with fontspec}
\@onlypreamble\babelfont
\newcommand\babelfont[2][]{% 1=langs/scripts 2=fam
\edef\bbl at tempa{#1}%
@@ -10397,6 +10477,7 @@ help from Bernd Raichle, for which I am grateful.
%
% \begin{macrocode}
%<<*Footnote changes>>
+\bbl at trace{Bidi footnotes}
\ifx\bbl at beforeforeign\leavevmode
\def\bbl at footnote#1#2#3{%
\@ifnextchar[%
@@ -10498,6 +10579,7 @@ help from Bernd Raichle, for which I am grateful.
%
% \begin{macrocode}
%<*texxet>
+\bbl at trace{Redefinitions for bidi layout}
\ifx\bbl at opt@layout\@nnil\endinput\fi % No layout
\def\bbl at startskip{\ifcase\bbl at thepardir\leftskip\else\rightskip\fi}
\def\bbl at endskip{\ifcase\bbl at thepardir\rightskip\else\leftskip\fi}
@@ -10736,6 +10818,7 @@ help from Bernd Raichle, for which I am grateful.
% \begin{macrocode}
%<*luatex>
\ifx\AddBabelHook\@undefined
+\bbl at trace{Read language.dat}
\begingroup
\toks@{}
\count@\z@ % 0=start, 1=0th, 2=normal
@@ -10816,6 +10899,7 @@ help from Bernd Raichle, for which I am grateful.
\repeat
\fi
\endgroup
+\bbl at trace{Macros for reading patterns files}
\def\bbl at get@enc#1:#2:#3\@@@{\def\bbl at hyph@enc{#2}}
\ifx\babelcatcodetablenum\@undefined
\def\babelcatcodetablenum{5211}
@@ -11051,6 +11135,7 @@ help from Bernd Raichle, for which I am grateful.
% releases of \luatex{} simplify a lot the solution with |\shapemode|.
%
% \begin{macrocode}
+\bbl at trace{Redefinitions for bidi layout}
\ifx\bbl at opt@layout\@nnil\endinput\fi % if no layout
\ifx\bbl at beforeforeign\leavevmode % A poor test for bidi=
\def\@hangfrom#1{%
@@ -18147,39 +18232,6 @@ end
\ifx\scriptsize\@undefined
\let\scriptsize\sevenrm
\fi
-% \end{macrocode}
-%
-% \subsection{\Babel{} options}
-%
-% \changes{babel~3.9k}{2014/03/22}{Moved code from babel.def, and add
-% some new tools (not yet documented)}
-%
-% The file |babel.def| expects some definitions made in the \LaTeX{}
-% style file. So we must provide them at least some predefined values as
-% well some tools to set them (even if not all options are
-% available). There in no package options, and therefore and alternative
-% mechanism is provided. For the moment, only |\babeloptionstrings| and
-% |\babeloptionmath| are provided, which can be defined before loading
-% \babel. |\BabelModifiers| can be set too (but not sure it works).
-%
-% \begin{macrocode}
-\let\bbl at opt@shorthands\@nnil
-\def\bbl at ifshorthand#1#2#3{#2}%
-\ifx\babeloptionstrings\@undefined
- \let\bbl at opt@strings\@nnil
-\else
- \let\bbl at opt@strings\babeloptionstrings
-\fi
-\def\bbl at tempa{normal}
-\ifx\babeloptionmath\bbl at tempa
- \def\bbl at mathnormal{\noexpand\textormath}
-\fi
-\def\BabelStringsDefault{generic}
-\ifx\BabelModifiers\@undefined\let\BabelModifiers\relax\fi
-\let\bbl at afterlang\relax
-\let\bbl at language@opts\@empty
-\ifx\@uclclist\@undefined\let\@uclclist\@empty\fi
-\def\AfterBabelLanguage#1#2{}
%</plain>
% \end{macrocode}
%
diff --git a/required/babel/babel.ins b/required/babel/babel.ins
index 69c3509..d12ffde 100644
--- a/required/babel/babel.ins
+++ b/required/babel/babel.ins
@@ -26,7 +26,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%%
-\def\filedate{2018/01/24}
+\def\filedate{2018/01/27}
\def\batchfile{babel.ins}
\input docstrip.tex
diff --git a/required/babel/babel.pdf b/required/babel/babel.pdf
index b8da57f..cc65d7e 100644
Binary files a/required/babel/babel.pdf and b/required/babel/babel.pdf differ
diff --git a/required/babel/bbcompat.dtx b/required/babel/bbcompat.dtx
index 66af9a5..1a104a7 100644
--- a/required/babel/bbcompat.dtx
+++ b/required/babel/bbcompat.dtx
@@ -30,7 +30,7 @@
%
% \iffalse
%<*dtx>
-\ProvidesFile{bbcompat.dtx}[2018/01/24 v3.17]
+\ProvidesFile{bbcompat.dtx}[2018/01/27 v3.17.1169]
%</dtx>
%
%% File 'bbcompat.dtx'
diff --git a/required/babel/samples/lua-arabic.pdf b/required/babel/samples/lua-arabic.pdf
index 374e969..1d934f0 100644
Binary files a/required/babel/samples/lua-arabic.pdf and b/required/babel/samples/lua-arabic.pdf differ
diff --git a/required/babel/samples/lua-arabic.tex b/required/babel/samples/lua-arabic.tex
index bbefb96..524cbdd 100644
--- a/required/babel/samples/lua-arabic.tex
+++ b/required/babel/samples/lua-arabic.tex
@@ -94,9 +94,10 @@ luatexbase.add_to_callback("pre_linebreak_filter", fixkerns, "fixkerns", where)
\bigskip
-\foreignlanguage*{english}{In red, a couple of words incorrectly
-rendered by default in the corrent font. It seems a bug in the font
-loader, and a workaround is used in this document (see the source).}
+\foreignlanguage*{english}{Below, in red, a couple of words
+incorrectly rendered by default in the corrent font. It seems a bug in
+the font loader, and a workaround is used in this document (see the
+source).}
\mainmatter
@@ -217,20 +218,23 @@ Pseudodoxia Epidemica) الذي صدر عام 1646.
\subsection{جدول التوزيع الإلكتروني}
-\foreignlanguage*{english}{(Also from Wikipedia. These examples show
-the column order and some directions must be still sorted
-out. Furthermore, a bullet is misplaced, so \texttt{bidi=basic-r} must
-be fine-tuned.)}
+\foreignlanguage*{english}{Also from Wikipedia. These examples show
+the column order and some directions must be still sorted out. See the
+source for the workaroud used here. Furthermore, the way “New
+Caledonia” is split looks wrong (but actually “correct”).}
+
+\let\ortabular\tabular
+\def\tabular{\mathdir\pagedir\ortabular}
\begingroup
\addfontfeatures{Numbers=ArabicOff}
\begin{center}
-\begin{tabular}{rlrrrrrrr}
+\begin{tabular}{lllllllll}
\toprule
\multicolumn{1}{c}{الرقم} & العنصر & 1 & 2 & 3 & 4 & 5 & 6 & 7\\
-\cmidrule(l){1-1}\cmidrule{2-2}\cmidrule(l){3-9}
+\cmidrule(r){1-2}\cmidrule(r){3-9}
1 & هيدروجين & 1\\
2 & هيليوم & 2\\
37 & روبيديوم & 2 & 8 & 18 & 8 & 1\\
@@ -245,12 +249,13 @@ be fine-tuned.)}
\endgroup
-\begin{tabular}{rp{8cm}}
+\begin{center}
+\begin{tabular}{lp{8cm}}
\toprule
الشعاب المرجانية
& شعب حلقي • Cay • Fringing reef • Microatoll •
سمك المرجان • \foreignlanguage{english}{\textit{The Structure and
- Distribution of Coral Reefs}}\\
+ Distribution of Coral Reefs}}\\[1ex]
مناطق الشعاب المرجانية
& Deep water coral • اندروس وجزر البهاما • الحاجز المرجاني لبليز •
جزر بحر المرجان • مثلث الشعاب • الحيد المرجاني العظيم • جزر المالديف •
@@ -258,5 +263,6 @@ be fine-tuned.)}
Ridge • جزر راجا أمبات • البحر الأحمر • Southeast Asian coral reefs\\
\bottomrule
\end{tabular}
+\end{center}
\end{document}
More information about the latex3-commits
mailing list