From 87c74b3292e1c3efc4427ae0536a1d30a0dc8e4b Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 1 Feb 2021 03:00:47 +0000 Subject: CTAN sync 202102010300 --- macros/generic/witharrows/witharrows.dtx | 73 +++++++++----------------------- 1 file changed, 20 insertions(+), 53 deletions(-) (limited to 'macros/generic/witharrows/witharrows.dtx') diff --git a/macros/generic/witharrows/witharrows.dtx b/macros/generic/witharrows/witharrows.dtx index 567911b1bc..f14d21114a 100644 --- a/macros/generic/witharrows/witharrows.dtx +++ b/macros/generic/witharrows/witharrows.dtx @@ -15,8 +15,8 @@ % % \fi % \iffalse -\def\myfileversion{2.6a} -\def\myfiledate{2021/01/12} +\def\myfileversion{2.6b} +\def\myfiledate{2021/01/31} % % %<*batchfile> @@ -101,7 +101,7 @@ version 2005/12/01 or later. % see p.~\pageref{plain-TeX}). This package can be used with |xelatex|, % |lualatex|, |pdflatex| but also by the classical workflow % |latex|-|dvips|-|ps2pdf| (or Adobe Distiller). This package loads the packages -% \pkg{l3keys2e}, \pkg{xparse}, \pkg{varwidth}, \pkg{tikz} and the Tikz libraries +% \pkg{l3keys2e}, \pkg{varwidth}, \pkg{tikz} and the Tikz libraries % \pkg{arrows.meta} and \pkg{bending}. The arrows are drawn with Tikz and that's % why several compilations may be necessary. % @@ -2557,7 +2557,7 @@ version 2005/12/01 or later. % Assume we want to draw a loop of numbered arrows. In this purpose, it's % possible to write a dedicated command |\NumberedLoop| which will do the job % when used in |code-after|. In the following example, we write this command with -% |\NewDocumentCommand| of \pkg{xparse} and |\foreach| of \pkg{pgffor} (both +% |\NewDocumentCommand| (of \pkg{xparse}) and |\foreach| of \pkg{pgffor} (both % packages are loaded when \pkg{witharrows} is loaded). % % \begin{Verbatim} @@ -2686,7 +2686,6 @@ version 2005/12/01 or later. % % \bigskip % \begin{macrocode} -\RequirePackage { xparse } [ 2019-01-01 ] \RequirePackage { varwidth } % % \end{macrocode} @@ -2767,17 +2766,8 @@ version 2005/12/01 or later. \ProcessKeysOptions { WithArrows / package } % \end{macrocode} % -% % \medskip % \begin{macrocode} -\@@_msg_new:nn { Option~incompatible~with~Beamer } - { - The~option~'\l_keys_key_str'\ is~incompatible~ - with~Beamer~because~Beamer~has~its~own~system~to~extract~footnotes. - } -% \end{macrocode} -% -% \begin{macrocode} \@@_msg_new:nn { footnote~with~footnotehyper~package } { You~can't~use~the~option~'footnote'~because~the~package~ @@ -2805,8 +2795,12 @@ version 2005/12/01 or later. % \begin{macrocode} \bool_if:NT \c_@@_footnote_bool { +% \end{macrocode} +% The class \cls{beamer} has its own system to extract footnotes and that's why +% we have nothing to do if \cls{beamer} is used. +% \begin{macrocode} \@ifclassloaded { beamer } - { \msg_info:nn { witharrows } { Option~incompatible~with~Beamer } } + { \bool_set_false:N \c_@@_footnote_bool } { \@ifpackageloaded { footnotehyper } { \@@_error:n { footnote~with~footnotehyper~package } } @@ -2818,14 +2812,18 @@ version 2005/12/01 or later. % \begin{macrocode} \bool_if:NT \c_@@_footnotehyper_bool { +% \end{macrocode} +% The class \cls{beamer} has its own system to extract footnotes and that's why +% we have nothing to do if \cls{beamer} is used. +% \begin{macrocode} \@ifclassloaded { beamer } - { \@@_info:n { Option~incompatible~with~Beamer } } + { \bool_set_false:N \c_@@_footnote_bool } { \@ifpackageloaded { footnote } { \@@_error:n { footnotehyper~with~footnote~package } } { \usepackage { footnotehyper } } + \bool_set_true:N \c_@@_footnote_bool } - \bool_set_true:N \c_@@_footnote_bool } % \end{macrocode} % The flag |\c_@@_footnote_bool| is raised and so, we will only have to test @@ -2892,22 +2890,7 @@ version 2005/12/01 or later. % \end{macrocode} % % \bigskip -% We define a command |\@@_strcmp:nn| to compare two token lists. It will be -% available whether the engine is pdfTeX, XeTeX or LuaTeX. -% \begin{macrocode} -\sys_if_engine_luatex:TF - { - \cs_new_protected:Npn \@@_strcmp:nn #1 #2 - { \lua_now:e { l3kernel.strcmp('#1','#2') } } - } - { - \cs_new_protected:Npn \@@_strcmp:nn #1 #2 - { \tex_strcmp:D { #1 } { #2 } } - } -% \end{macrocode} -% -% \bigskip -% We can now define a command |\@@_sort_seq:N| which will sort a sequence. +% We define a command |\@@_sort_seq:N| which will sort a sequence. % \begin{macrocode} \cs_new_protected:Npn \@@_sort_seq:N #1 { @@ -2915,7 +2898,7 @@ version 2005/12/01 or later. { \int_compare:nNnTF { - \@@_strcmp:nn + \tex_strcmp:D { \str_lower_case:n { ##1 } } { \str_lower_case:n { ##2 } } } @@ -2929,27 +2912,11 @@ version 2005/12/01 or later. % \bigskip % The following command creates a sequence of strings (|str|) from a |clist|. % -% -% The following command converts all the elements of a sequence (which are token -% lists) into strings. -% \begin{macrocode} -\cs_new_protected:Npn \@@_convert_to_str_seq:N #1 - { - \seq_clear:N \l_tmpa_seq - \seq_map_inline:Nn #1 - { - \seq_put_left:Nx \l_tmpa_seq { \tl_to_str:n { ##1 } } - } - \seq_set_eq:NN #1 \l_tmpa_seq - } -% \end{macrocode} -% -% The following command creates a sequence of strings (|str|) from a |clist|. % \begin{macrocode} \cs_new_protected:Npn \@@_set_seq_of_str_from_clist:Nn #1 #2 { \seq_set_from_clist:Nn #1 { #2 } - \@@_convert_to_str_seq:N #1 + \seq_set_map_x:NNn #1 #1 { \tl_to_str:n { ##1 } } } % \end{macrocode} % @@ -7926,10 +7893,10 @@ version 2005/12/01 or later. % % \subsection*{Changes between 2.5.1 and 2.6} % -% The key |format| now support the letters |R|, |C| and |L|. +% The key |format| now supports the letters |R|, |C| and |L|. % % -% \subsection*{Changes between 2.6 and 2.6a} +% \subsection*{Changes between 2.6 and 2.6a (and 2.6b)} % % Replacement of |\hbox_unpack_clear:N| by |\hbox_unpack_drop:N| since % |\hbox_unpack_clear:N| is now deprecated in \pkg{expl3}. -- cgit v1.2.3