summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/nicematrix/nicematrix-code.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/nicematrix/nicematrix-code.dtx')
-rw-r--r--macros/latex/contrib/nicematrix/nicematrix-code.dtx48
1 files changed, 17 insertions, 31 deletions
diff --git a/macros/latex/contrib/nicematrix/nicematrix-code.dtx b/macros/latex/contrib/nicematrix/nicematrix-code.dtx
index 4c28160949..93555aa1e5 100644
--- a/macros/latex/contrib/nicematrix/nicematrix-code.dtx
+++ b/macros/latex/contrib/nicematrix/nicematrix-code.dtx
@@ -17,8 +17,8 @@
%
% \fi
% \iffalse
-\def\myfileversion{6.19}
-\def\myfiledate{2023/05/15}
+\def\myfileversion{6.19a}
+\def\myfiledate{2023/05/25}
%
%
%<*batchfile>
@@ -1743,7 +1743,10 @@ version 2005/12/01 or later.
\seq_map_indexed_inline:Nn \g_@@_notes_seq
{
\tl_if_eq:nnT { { #1 } { #2 } } { ##2 }
- { \int_set:Nn \l_tmpa_int { ##1 } \seq_map_break: }
+ {
+ \int_set:Nn \l_tmpa_int { ##1 }
+ \seq_map_break:
+ }
}
\int_compare:nNnF \l_tmpa_int = \c_zero_int
{ \int_add:Nn \l_tmpa_int \g_@@_notes_caption_int }
@@ -1829,31 +1832,20 @@ version 2005/12/01 or later.
{ \int_gzero:N \c@tabularnote }
% \end{macrocode}
% Now, we try to detect duplicate notes in the caption.
+% Be careful! We must put |\tl_if_in:NnF| and not |\tl_if_in:NnT|!
% \begin{macrocode}
- \bool_set_false:N \l_tmpa_bool
- \seq_map_inline:Nn \g_@@_notes_in_caption_seq
- { \@@_if_eq_two_three:nnn ##1 { #2 } }
-% \end{macrocode}
-% Be careful! We must put |\bool_if:NF| and not |\bool_if:NT|!
-% \begin{macrocode}
- \bool_if:NF \l_tmpa_bool
+ \seq_if_in:NnF \g_@@_notes_in_caption_seq { { #1 } { #2 } }
{ \@@_error:n { Identical~notes~in~caption } }
}
{
% \end{macrocode}
% In the following code, we are in the first composition of the caption or at
-% the first |\tabularnote| of the second composition. We have
-% to see whether the text of our tabular note is among the texts of the
-% tabularnotes stored in |\g_@@_notes_in_caption_seq|. For that, we will loop on
-% |\g_@@_notes_in_caption_seq| and we will raise |\l_tmpa_bool| if the text is found.
+% the first |\tabularnote| of the second composition.
% \begin{macrocode}
- \bool_set_false:N \l_tmpa_bool
- \seq_map_inline:Nn \g_@@_notes_in_caption_seq
- { \@@_if_eq_two_three:nnn ##1 { #2 } }
- \bool_if:NTF \l_tmpa_bool
+ \seq_if_in:NnTF \g_@@_notes_in_caption_seq { { #1 } { #2 } }
{
% \end{macrocode}
-% Now, we known that are in the second composition of the caption since we are
+% Now, we know that are in the second composition of the caption since we are
% reading a tabular note which has yet been read. Now, the value of
% |\g_@@_notes_caption_int| won't change anymore: it's the number of uses
% \emph{without optional argument} of the command |\tabularnote| in the caption.
@@ -1884,16 +1876,6 @@ version 2005/12/01 or later.
}
% \end{macrocode}
%
-% \begin{macrocode}
-\cs_new_protected:Npn \@@_if_eq_two_three:nnn #1 #2 #3
- {
- \tl_if_eq:nnT { #2 } { #3 }
- {
- \bool_set_true:N \l_tmpa_bool
- \seq_map_break:
- }
- }
-% \end{macrocode}
%
% \begin{macrocode}
\cs_new_protected:Npn \@@_count_novalue_first:nn #1 #2
@@ -9218,7 +9200,8 @@ version 2005/12/01 or later.
%
% In the |\CodeAfter|, the command |\@@_line:nn| will be linked to |\line|. This
% command takes two arguments which are the specifications of two cells in the
-% array (in the format $i$-$j$) and draws a dotted line between these cells.
+% array (in the format $i$-$j$) and draws a dotted line between these cells. In
+% fact, if also works with names of blocks.
%
% \medskip
% First, we write a command with the following behaviour:
@@ -9284,7 +9267,10 @@ version 2005/12/01 or later.
{
\@@_error:nnn { unknown~cell~for~line~in~CodeAfter } { #1 } { #2 }
}
- { \@@_draw_line_ii:nn { #1 } { #2 } }
+% \end{macrocode}
+% The test of |measuring@| is a security (cf. question 686649 on TeX StackExchange).
+% \begin{macrocode}
+ { \legacy_if:nF { measuring@ } { \@@_draw_line_ii:nn { #1 } { #2 } } }
}
% \end{macrocode}
%