texlive[43134] Master/texmf-dist: xsavebox (3feb17)

commits+karl at tug.org commits+karl at tug.org
Sat Feb 4 01:24:46 CET 2017


Revision: 43134
          http://tug.org/svn/texlive?view=revision&revision=43134
Author:   karl
Date:     2017-02-04 01:24:46 +0100 (Sat, 04 Feb 2017)
Log Message:
-----------
xsavebox (3feb17)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/xsavebox/ChangeLog
    trunk/Master/texmf-dist/doc/latex/xsavebox/xsavebox.pdf
    trunk/Master/texmf-dist/source/latex/xsavebox/xsavebox.tex
    trunk/Master/texmf-dist/tex/latex/xsavebox/xsavebox.sty

Modified: trunk/Master/texmf-dist/doc/latex/xsavebox/ChangeLog
===================================================================
--- trunk/Master/texmf-dist/doc/latex/xsavebox/ChangeLog	2017-02-04 00:24:31 UTC (rev 43133)
+++ trunk/Master/texmf-dist/doc/latex/xsavebox/ChangeLog	2017-02-04 00:24:46 UTC (rev 43134)
@@ -1,3 +1,7 @@
+2017-02-03
+	* v0.4
+	* fix: RTL related (luaTeX)
+
 2017-01-30
 	* v0.3
 	* fix: usability in RTL typesetting context

Modified: trunk/Master/texmf-dist/doc/latex/xsavebox/xsavebox.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/xsavebox/xsavebox.tex
===================================================================
--- trunk/Master/texmf-dist/source/latex/xsavebox/xsavebox.tex	2017-02-04 00:24:31 UTC (rev 43133)
+++ trunk/Master/texmf-dist/source/latex/xsavebox/xsavebox.tex	2017-02-04 00:24:46 UTC (rev 43134)
@@ -132,7 +132,7 @@
 
 With \LaTeX{} in DVI mode and \XeLaTeX, box \emph{saving} commands should not be placed on a line of their own with empty lines above and below. For technical reasons this will produce an empty paragraph. Always place them at the beginning or at the end of a paragraph in the input file. Also, box saving commands cannot be placed in the document preamble with \LaTeX{} (DVI) and \XeLaTeX{}.
 
-In a right-to-left typesetting context (RTL), the \verb+<content>+ argument should be enclosed in a pair of \verb+\beginR+ and \verb+\endR+ commands for correctly typesetting RTL text.
+In a right-to-left typesetting context (RTL) using the (pdf)\LaTeX{} or \XeLaTeX{} engines, the \verb+<content>+ argument should be enclosed in a pair of \verb+\beginR+ and \verb+\endR+ commands for correct typesetting results.
 
 \subsection*{Referencing saved content}
 Previously saved content can be inserted with\\[-1.6\baselineskip]

Modified: trunk/Master/texmf-dist/tex/latex/xsavebox/xsavebox.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/xsavebox/xsavebox.sty	2017-02-04 00:24:31 UTC (rev 43133)
+++ trunk/Master/texmf-dist/tex/latex/xsavebox/xsavebox.sty	2017-02-04 00:24:46 UTC (rev 43134)
@@ -49,8 +49,8 @@
 \RequirePackage{pdfbase} %everything with `pbs_' prefix
 \RequirePackage{l3keys2e}
 
-\def\g at xsb@version at tl{0.3}
-\def\g at xsb@date at tl{2017/01/30}
+\def\g at xsb@version at tl{0.4}
+\def\g at xsb@date at tl{2017/02/03}
 \ProvidesExplPackage{xsavebox}{\g at xsb@date at tl}{\g at xsb@version at tl}
 {saveboxes for repeating content without code replication}
 
@@ -97,7 +97,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \DeclareDocumentCommand\xsavebox{smO{\width}O{c}m}{
   \group_begin:
-  \int_compare:nT{\TeXXeTstate>\c_zero}{\beginL}
+  \xsb_beginLTR:
   \IfBooleanTF{#1}{
     %later colour injection possible (pdfTeX, LuaTeX)
     \hbox_set:Nn\l_xsb_raw_box{\color at begingroup#5\color at endgroup} %raw
@@ -133,7 +133,7 @@
   }{
     \xsb_process_box:nnnN{#2}{\width}{c}\l_xsb_box
   }
-  \int_compare:nT{\TeXXeTstate>\c_zero}{\endL}
+  \xsb_endLTR:
   \group_end:
 }
 
@@ -154,7 +154,7 @@
 
 \cs_new_nopar:Nn\xsb_xlrbox:{
   \group_begin:
-  \int_compare:nT{\TeXXeTstate>\c_zero}{\beginL}
+  \xsb_beginLTR:
   \hbox_set:Nn\l_xsb_box\bgroup\bgroup
   \ignorespaces
 }
@@ -164,13 +164,13 @@
   \egroup\egroup
   \sbox\l_xsb_box{\hbox_unpack_clear:N\l_xsb_box}
   \xsb_process_box:nnnN{#1}{\width}{c}\l_xsb_box
-  \int_compare:nT{\TeXXeTstate>\c_zero}{\endL}
+  \xsb_endLTR:
   \group_end:
 }
 
 \cs_new_nopar:Nn\xsb_xlrbox_star:{
   \group_begin:
-  \int_compare:nT{\TeXXeTstate>\c_zero}{\beginL}
+  \xsb_beginLTR:
   \hbox_set:Nn\l_xsb_box\bgroup\color at begingroup
   \ignorespaces
 }
@@ -179,7 +179,7 @@
   \unskip
   \color at endgroup\egroup
   \xsb_process_box:nnnN{#1}{\width}{c}\l_xsb_box
-  \int_compare:nT{\TeXXeTstate>\c_zero}{\endL}
+  \xsb_endLTR:
   \group_end:
 }
 
@@ -206,7 +206,7 @@
   \pbs_pdfxform:nnn{1}{0}{#4}
   %define command for inserting the m-boxed XObject reference
   \tl_gset:cx{the#1}{
-    \exp_not:N\int_compare:nT{\TeXXeTstate>\c_zero}{\beginL}
+    \exp_not:N\xsb_beginLTR:
     \exp_not:N\makebox[\l_xsb_new_wd_tl][#3]{
       \exp_not:N\hbox_to_wd:nn{\l_xsb_wd_tl}{
         \exp_not:N\vrule~width~\c_zero_dim~height~\l_xsb_ht_tl~
@@ -215,9 +215,21 @@
         \exp_not:N\pbs_pdfrefxform:n{\pbs_pdflastxform:}\hss
       }
     }
-    \exp_not:N\int_compare:nT{\TeXXeTstate>\c_zero}{\endL}
+    \exp_not:N\xsb_endLTR:
   }
 }
 
 \box_new:N\l_xsb_box     %for saving the re-aligned content
 \box_new:N\l_xsb_raw_box %for saving the raw content
+
+%environment for setting LTR typesetting direction with e-TeX based engines 
+\cs_new:Nn\xsb_beginLTR:{
+  \cs_if_exist:NT\TeXXeTstate{
+    \int_compare:nT{\TeXXeTstate>\c_zero}{\beginL}
+  }
+}
+\cs_new:Nn\xsb_endLTR:{
+  \cs_if_exist:NT\TeXXeTstate{
+    \int_compare:nT{\TeXXeTstate>\c_zero}{\endL}
+  }
+}



More information about the tex-live-commits mailing list