diff options
author | Norbert Preining <norbert@preining.info> | 2023-10-03 03:01:05 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2023-10-03 03:01:05 +0000 |
commit | 75afa6c3d445abbfd4e8c0cb9d2d24eb4d1b71fe (patch) | |
tree | be5945dc96693dc01b26eb16df1472a193fdf93c /macros/luatex/latex | |
parent | 5f9c1e9c3c9b2ac59c6f868744ee6fafee27ab39 (diff) |
CTAN sync 202310030301
Diffstat (limited to 'macros/luatex/latex')
-rw-r--r-- | macros/luatex/latex/luabidi/LICENCE.md | 3 | ||||
-rw-r--r-- | macros/luatex/latex/luabidi/README.md | 9 | ||||
-rw-r--r-- | macros/luatex/latex/luabidi/doc/luabidi.pdf | bin | 91872 -> 92329 bytes | |||
-rw-r--r-- | macros/luatex/latex/luabidi/doc/luabidi.tex | 5 | ||||
-rw-r--r-- | macros/luatex/latex/luabidi/tex/luabidi.sty | 55 |
5 files changed, 54 insertions, 18 deletions
diff --git a/macros/luatex/latex/luabidi/LICENCE.md b/macros/luatex/latex/luabidi/LICENCE.md index 7de4faf488..0b766dd22e 100644 --- a/macros/luatex/latex/luabidi/LICENCE.md +++ b/macros/luatex/latex/luabidi/LICENCE.md @@ -1,6 +1,7 @@ # MIT Licence -Copyright (c) Vafa Khalighi 2009, Arthur Reutenauer 2013, 2019, Jürgen Spitzmüller 2019. +Copyright (c) Vafa Khalighi 2009, Arthur Reutenauer 2013, 2019-2023, +Jürgen Spitzmüller 2019-2023. The licence for all files within this package is (the MIT licence)[https://opensource.org/licenses/MIT] unless otherwise noted. diff --git a/macros/luatex/latex/luabidi/README.md b/macros/luatex/latex/luabidi/README.md index f889e844c6..c3c8a6d452 100644 --- a/macros/luatex/latex/luabidi/README.md +++ b/macros/luatex/latex/luabidi/README.md @@ -5,4 +5,11 @@ does for XeTeX. ## CTAN Package https://www.ctan.org/pkg/luabidi -Copyright (c) Vafa Khalighi 2009, Arthur Reutenauer 2013, 2019, Jürgen Spitzmüller 2019 +Copyright (c) Vafa Khalighi 2009, Arthur Reutenauer 2013, 2019-2023, +Jürgen Spitzmüller 2019-2023 + +Except for luabidi.sty, all files in this package are licensed under the terms +of the MIT licence in the wording of the Open Source Initiative +(https://opensource.org/licenses/MIT). The file luabidi.sty is licensed under +the LaTeX Project Public License (https://www.latex-project.org/lppl/), either +version 1.3c or, at your option, any later version. diff --git a/macros/luatex/latex/luabidi/doc/luabidi.pdf b/macros/luatex/latex/luabidi/doc/luabidi.pdf Binary files differindex 8e31b11622..66b4d02bd4 100644 --- a/macros/luatex/latex/luabidi/doc/luabidi.pdf +++ b/macros/luatex/latex/luabidi/doc/luabidi.pdf diff --git a/macros/luatex/latex/luabidi/doc/luabidi.tex b/macros/luatex/latex/luabidi/doc/luabidi.tex index 3dc17fe720..3865929b0b 100644 --- a/macros/luatex/latex/luabidi/doc/luabidi.tex +++ b/macros/luatex/latex/luabidi/doc/luabidi.tex @@ -80,6 +80,8 @@ pdfkeywords={luatex, lualatex, multilingual, bidi} \begin{document} \hyphenation{Kha-li-ghi Reu-ten-auer} \GetFileInfo{luabidi.sty} +% not correctly set +\def\fileversion{0.6} \title{\lbd\\\color{myblue}Bidirectional typesetting in \LuaLaTeX} @@ -226,6 +228,9 @@ The following macros are provided: \section{Revision Log} \begin{description} + \item[v. 0.6 (2023/10/01)] Fixing a bug in \cmd{\RLE} and \cmd{\LRE}; Switching \cmd{\bodydir} inside long RTL/LTR text; + ensuring \cmd{\bodydir} and \cmd{\pagedir} are equal at shipout; patching lists to use a correct value of \cmd{\shapemode}; + Setting \cmd{\breakafterdirmode} and \cmd{\matheqdirmode} to 1. Patch kindly provided by Udi Fogiel. \item[v. 0.5 (2019/10/27)] Add \cmd{\RTLfootnote}, \cmd{\LTRfootnote}, and \cmd{\hboxR}; fix \texttt{autofootnoterule} option; add \cmd{\autofootnoterule}, \cmd{\leftfootnoterule}, \cmd{\rightfootnoterule} and \cmd{\textwidthfootnoterule}; add manual. \item[v. 0.4 (2019/08/24)] Fix \cmd{\@ensure@RTL}. diff --git a/macros/luatex/latex/luabidi/tex/luabidi.sty b/macros/luatex/latex/luabidi/tex/luabidi.sty index 4277a1f173..47e4d92d07 100644 --- a/macros/luatex/latex/luabidi/tex/luabidi.sty +++ b/macros/luatex/latex/luabidi/tex/luabidi.sty @@ -1,13 +1,14 @@ %% This file is luabidi.sty %% This is part of the luabidi package %% -%% Copyright © 2009 Vafa Khalighi, 2013--2019 Arthur Reutenauer, 2019 Jürgen Spitzmüller +%% Copyright © 2009 Vafa Khalighi, 2013--2023 Arthur Reutenauer, +%% 2019--2023 Jürgen Spitzmüller %% %%%% It may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3c %% of this license or (at your option) any later version. \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{luabidi}[2019/10/27 v0.5 +\ProvidesPackage{luabidi}[2023/10/01 v0.6 Bidirectional typesetting in LuaTeX] \RequirePackage{etoolbox} @@ -29,20 +30,19 @@ \newif\if@RTL \newif\if@RTLmain -\@RTLmainfalse -\def\setRTLmain{\@RTLmaintrue\pagedir TRT \bodydir TRT \pardir TRT \textdir TRT} -\def\setRTL{\@RTLtrue\pardir TRT \textdir TRT} +\def\setRTLmain{\@RTLmaintrue\pagedir TRT\bodydir TRT\pardir TRT\textdir TRT} +\def\setRTL{\@RTLtrue\bodydir TRT\pardir TRT\textdir TRT} \let\setRL=\setRTL -\def\setLTR{\@RTLfalse\pardir TLT \textdir TLT} +\def\setLTR{\@RTLfalse\bodydir TLT\pardir TLT\textdir TLT} \let\setLR=\setLTR \let\unsetRTL=\setLTR \let\unsetLTR=\setRTL -\def\RTL{\@RTLtrue\trivlist \pardir TRT \textdir TRT\item\relax} -\def\endRTL{\@RTLfalse\endtrivlist} -\def\LTR{\trivlist \pardir TLT \textdir TLT\item\relax} -\def\endLTR{\endtrivlist} -\def\@ensure@RTL#1{\if@RTL#1\else\RLE{#1}\fi} -\def\@ensure@LTR#1{\if@RTL\LRE{#1}\else{#1}\fi} +\def\RTL{\par\@RTLtrue\bodydir TRT\pardir TRT\textdir TRT} +\def\endRTL{\par} +\def\LTR{\par\@RTLfalse\bodydir TLT\pardir TLT \textdir TLT} +\def\endLTR{\par} +\def\@ensure@RTL#1{\if@RTL #1\else\RLE{#1}\fi} +\def\@ensure@LTR#1{\if@RTL\LRE{#1}\else #1\fi} \def\@ensure@dir#1{\if@RTL\RLE{#1}\else{#1}\fi} \let\@ensure@maindir=\@ensuredir \let\n@xt=\ @@ -52,13 +52,38 @@ \def\pRLE{\protect\afterassignment\moreRLE \let\n@xt= } \def\bracetext{\ifcat\n@xt{\else\ifcat\n@xt}\fi \errmessage{Missing left brace has been substituted}\fi \bgroup} -\def\moreLRE{\bracetext \aftergroup\unsetLTR \setLTR\@RTLfalse} -\def\moreRLE{\bracetext \aftergroup\unsetRTL \setRTL\@RTLtrue} +\def\moreLRE{\bracetext \leavevmode\@RTLfalse\textdir TLT} +\def\moreRLE{\bracetext \leavevmode\@RTLtrue\textdir TRT} \let\LR=\LRE \let\RL=\RLE \def\hboxR#1{\hbox{\RL{#1}}} % +% If \pagedir is different from \pardir then \shapemode needs to be 2 for \parshape in lists +% + +\let\luabidi@OL@list\list +\patchcmd\list{\parshape}{\luabidi@parshape}{}{} +\def\luabidi@parshape#1#2#3{% + \parshape #1 #2 #3 % + \ifnum\pagedirection=\pardirection\else + \shapemode\tw@ +\fi} + +% +% making sure \bodydir is the same as \pagedir at \output time +% + +\output\expandafter{\expandafter\bodydir\expandafter\pagedir\the\output} + +% +% The following registers are set to 1 to fix some bugs in the engine. See sections 3.3.3 and 7.5.3 of LuaTeX's manual. +% + +\matheqdirmode=1 +\breakafterdirmode=1 + +% % Footnotes % @@ -70,11 +95,9 @@ % This needs to be loaded late because of the switch \AtEndPreamble{% - \makeatletter \ifluabidi@autofootnoterule \input{luabidi-autofootnoterule.def} \fi - \makeatother } \endinput |