From 87c74b3292e1c3efc4427ae0536a1d30a0dc8e4b Mon Sep 17 00:00:00 2001
From: Norbert Preining <norbert@preining.info>
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 }
 %</LaTeX>
 %    \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

