summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-01-30 23:32:20 +0000
committerKarl Berry <karl@freefriends.org>2017-01-30 23:32:20 +0000
commita9b7bc30b28ec77ad1e0de52a2193de4225ad780 (patch)
tree01189904cd2a1f556df47cb318544494d5816f6b
parent941dafb2214947be4fc65c82c4a73fe7add7bc2e (diff)
xsavebox (30jan17)
git-svn-id: svn://tug.org/texlive/trunk@43098 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/xsavebox/ChangeLog4
-rw-r--r--Master/texmf-dist/doc/latex/xsavebox/xsavebox.pdfbin277701 -> 278824 bytes
-rw-r--r--Master/texmf-dist/source/latex/xsavebox/xsavebox.tex2
-rw-r--r--Master/texmf-dist/tex/latex/xsavebox/xsavebox.sty14
4 files changed, 17 insertions, 3 deletions
diff --git a/Master/texmf-dist/doc/latex/xsavebox/ChangeLog b/Master/texmf-dist/doc/latex/xsavebox/ChangeLog
index f9cb95adba1..a82f7ef2ae0 100644
--- a/Master/texmf-dist/doc/latex/xsavebox/ChangeLog
+++ b/Master/texmf-dist/doc/latex/xsavebox/ChangeLog
@@ -1,3 +1,7 @@
+2017-01-30
+ * v0.3
+ * fix: usability in RTL typesetting context
+
2016-03-07
* v0.2
* new: package option `margin=<dimension>' added
diff --git a/Master/texmf-dist/doc/latex/xsavebox/xsavebox.pdf b/Master/texmf-dist/doc/latex/xsavebox/xsavebox.pdf
index b0661205e9f..c3c338561e6 100644
--- a/Master/texmf-dist/doc/latex/xsavebox/xsavebox.pdf
+++ b/Master/texmf-dist/doc/latex/xsavebox/xsavebox.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/xsavebox/xsavebox.tex b/Master/texmf-dist/source/latex/xsavebox/xsavebox.tex
index 32d0fdd1bf8..20e6f82e7ed 100644
--- a/Master/texmf-dist/source/latex/xsavebox/xsavebox.tex
+++ b/Master/texmf-dist/source/latex/xsavebox/xsavebox.tex
@@ -132,6 +132,8 @@ Verbatim content can only be saved using the `\verb+xlrbox[*]+' environment.
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.
+
\subsection*{Referencing saved content}
Previously saved content can be inserted with\\[-1.6\baselineskip]
diff --git a/Master/texmf-dist/tex/latex/xsavebox/xsavebox.sty b/Master/texmf-dist/tex/latex/xsavebox/xsavebox.sty
index 976507d9545..b79d15b222b 100644
--- a/Master/texmf-dist/tex/latex/xsavebox/xsavebox.sty
+++ b/Master/texmf-dist/tex/latex/xsavebox/xsavebox.sty
@@ -1,4 +1,4 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% xsavebox.sty
%
@@ -49,8 +49,8 @@
\RequirePackage{pdfbase} %everything with `pbs_' prefix
\RequirePackage{l3keys2e}
-\def\g@xsb@version@tl{0.2}
-\def\g@xsb@date@tl{2016/03/07}
+\def\g@xsb@version@tl{0.3}
+\def\g@xsb@date@tl{2017/01/30}
\ProvidesExplPackage{xsavebox}{\g@xsb@date@tl}{\g@xsb@version@tl}
{saveboxes for repeating content without code replication}
@@ -97,6 +97,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareDocumentCommand\xsavebox{smO{\width}O{c}m}{
\group_begin:
+ \int_compare:nT{\TeXXeTstate>\c_zero}{\beginL}
\IfBooleanTF{#1}{
%later colour injection possible (pdfTeX, LuaTeX)
\hbox_set:Nn\l_xsb_raw_box{\color@begingroup#5\color@endgroup} %raw
@@ -132,6 +133,7 @@
}{
\xsb_process_box:nnnN{#2}{\width}{c}\l_xsb_box
}
+ \int_compare:nT{\TeXXeTstate>\c_zero}{\endL}
\group_end:
}
@@ -152,6 +154,7 @@
\cs_new_nopar:Nn\xsb_xlrbox:{
\group_begin:
+ \int_compare:nT{\TeXXeTstate>\c_zero}{\beginL}
\hbox_set:Nn\l_xsb_box\bgroup\bgroup
\ignorespaces
}
@@ -161,11 +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}
\group_end:
}
\cs_new_nopar:Nn\xsb_xlrbox_star:{
\group_begin:
+ \int_compare:nT{\TeXXeTstate>\c_zero}{\beginL}
\hbox_set:Nn\l_xsb_box\bgroup\color@begingroup
\ignorespaces
}
@@ -174,6 +179,7 @@
\unskip
\color@endgroup\egroup
\xsb_process_box:nnnN{#1}{\width}{c}\l_xsb_box
+ \int_compare:nT{\TeXXeTstate>\c_zero}{\endL}
\group_end:
}
@@ -200,6 +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\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~
@@ -208,6 +215,7 @@
\exp_not:N\pbs_pdfrefxform:n{\pbs_pdflastxform:}\hss
}
}
+ \exp_not:N\int_compare:nT{\TeXXeTstate>\c_zero}{\endL}
}
}