summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-01-08 23:35:47 +0000
committerKarl Berry <karl@freefriends.org>2021-01-08 23:35:47 +0000
commiteb963ac14509494146101b4eaf83ef0f3af89ea6 (patch)
tree317e8af197c629ed3c8c41c63505d8c705b9d6e7 /Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty
parent2df956a8c8e5ea708f70d1e8185cfe0c3f412e1b (diff)
nicematrix (9jan21)
git-svn-id: svn://tug.org/texlive/trunk@57352 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty')
-rw-r--r--Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty297
1 files changed, 161 insertions, 136 deletions
diff --git a/Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty b/Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty
index e43f82a0591..8e8cb2bc878 100644
--- a/Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty
+++ b/Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty
@@ -6,7 +6,7 @@
%%
%% nicematrix.dtx (with options: `package')
%%
-%% Copyright (C) 2018-2020 by F. Pantigny
+%% Copyright (C) 2018-2021 by F. Pantigny
%%
%% This file may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
@@ -18,8 +18,8 @@
%% and version 1.3 or later is part of all distributions of
%% LaTeX version 2005/12/01 or later.
%%
-\def\myfileversion{5.8}
-\def\myfiledate{2021/01/01}
+\def\myfileversion{5.9}
+\def\myfiledate{2021/01/08}
\RequirePackage{pgfcore}
\usepgfmodule{shapes}
\RequirePackage{l3keys2e}
@@ -452,7 +452,7 @@
\tl_const:Nn \c__nicematrix_standard_tl { standard }
\tl_set_eq:NN \l__nicematrix_xdots_line_style_tl \c__nicematrix_standard_tl
\bool_new:N \l__nicematrix_light_syntax_bool
-\str_new:N \l__nicematrix_baseline_tl
+\tl_new:N \l__nicematrix_baseline_tl
\tl_set:Nn \l__nicematrix_baseline_tl c
\bool_new:N \l__nicematrix_exterior_arraycolsep_bool
\bool_new:N \l__nicematrix_parallelize_diags_bool
@@ -511,6 +511,12 @@
cell-space-top-limit .value_required:n = true ,
cell-space-bottom-limit .dim_set:N = \l__nicematrix_cell_space_bottom_limit_dim ,
cell-space-bottom-limit .value_required:n = true ,
+ cell-space-limits .code:n =
+ {
+ \dim_set:Nn \l__nicematrix_cell_space_bottom_limit_dim { #1 }
+ \dim_set:Nn \l__nicematrix_cell_space_top_limit_dim { #1 }
+ } ,
+ cell-spaces-limits .value_required:n = true ,
xdots .code:n = \keys_set:nn { NiceMatrix / xdots } { #1 } ,
max-delimiter-width .bool_set:N = \l__nicematrix_max_delimiter_width_bool ,
light-syntax .bool_set:N = \l__nicematrix_light_syntax_bool ,
@@ -1216,7 +1222,9 @@
\cs_set_eq:NN \columncolor \__nicematrix_columncolor
\cs_set_eq:NN \chessboardcolors \__nicematrix_chessboardcolors
\bool_if:NT \l__nicematrix_NiceTabular_bool \c_math_toggle_token
+ \seq_clear_new:N \l__nicematrix_colors_seq
\l__nicematrix_code_before_tl
+ \__nicematrix_actually_color:
\bool_if:NT \l__nicematrix_NiceTabular_bool \c_math_toggle_token
\group_end:
}
@@ -1805,9 +1813,9 @@
\tl_if_empty:nT { #1 } { \__nicematrix_fatal:n { empty~environment } }
\tl_map_inline:nn { #1 }
{
- \tl_if_eq:nnT { ##1 } { & }
+ \str_if_eq:nnT { ##1 } { & }
{ \__nicematrix_fatal:n { ampersand~in~light-syntax } }
- \tl_if_eq:nnT { ##1 } { \\ }
+ \str_if_eq:nnT { ##1 } { \\ }
{ \__nicematrix_fatal:n { double-backslash~in~light-syntax } }
}
\__nicematrix_light_syntax_i #1 \CodeAfter \q_stop
@@ -2798,40 +2806,6 @@
}
\cs_new_protected:Npn \__nicematrix_draw_line:
{
- \pgfrememberpicturepositiononpagetrue
- \pgf@relevantforpicturesizefalse
- \tl_if_eq:NNTF \l__nicematrix_xdots_line_style_tl \c__nicematrix_standard_tl
- \__nicematrix_draw_standard_dotted_line:
- \__nicematrix_draw_non_standard_dotted_line:
- }
-\cs_new_protected:Npn \__nicematrix_draw_non_standard_dotted_line:
- {
- \begin { scope }
- \exp_args:No \__nicematrix_draw_non_standard_dotted_line:n
- { \l__nicematrix_xdots_line_style_tl , \l__nicematrix_xdots_color_tl }
- }
-\cs_new_protected:Npn \__nicematrix_draw_non_standard_dotted_line:n #1
- {
- \draw
- [
- #1 ,
- shorten~> = \l__nicematrix_xdots_shorten_dim ,
- shorten~< = \l__nicematrix_xdots_shorten_dim ,
- ]
- ( \l__nicematrix_x_initial_dim , \l__nicematrix_y_initial_dim )
- -- node [ sloped , above ]
- { \c_math_toggle_token \scriptstyle \l__nicematrix_xdots_up_tl \c_math_toggle_token }
- node [ sloped , below ]
- {
- \c_math_toggle_token
- \scriptstyle \l__nicematrix_xdots_down_tl
- \c_math_toggle_token
- }
- ( \l__nicematrix_x_final_dim , \l__nicematrix_y_final_dim ) ;
- \end { scope }
- }
-\cs_new_protected:Npn \__nicematrix_draw_standard_dotted_line:
- {
\bool_lazy_and:nnF
{ \tl_if_empty_p:N \l__nicematrix_xdots_up_tl }
{ \tl_if_empty_p:N \l__nicematrix_xdots_down_tl }
@@ -2878,6 +2852,31 @@
}
\pgfrememberpicturepositiononpagetrue
\pgf@relevantforpicturesizefalse
+ \tl_if_eq:NNTF \l__nicematrix_xdots_line_style_tl \c__nicematrix_standard_tl
+ \__nicematrix_draw_standard_dotted_line:
+ \__nicematrix_draw_non_standard_dotted_line:
+ }
+\cs_new_protected:Npn \__nicematrix_draw_non_standard_dotted_line:
+ {
+ \begin { scope }
+ \exp_args:No \__nicematrix_draw_non_standard_dotted_line:n
+ { \l__nicematrix_xdots_line_style_tl , \l__nicematrix_xdots_color_tl }
+ }
+\cs_new_protected:Npn \__nicematrix_draw_non_standard_dotted_line:n #1
+ {
+ \draw
+ [
+ #1 ,
+ shorten~> = \l__nicematrix_xdots_shorten_dim ,
+ shorten~< = \l__nicematrix_xdots_shorten_dim ,
+ ]
+ ( \l__nicematrix_x_initial_dim , \l__nicematrix_y_initial_dim )
+ --
+ ( \l__nicematrix_x_final_dim , \l__nicematrix_y_final_dim ) ;
+ \end { scope }
+ }
+\cs_new_protected:Npn \__nicematrix_draw_standard_dotted_line:
+ {
\group_begin:
\dim_zero_new:N \l__nicematrix_l_dim
\dim_set:Nn \l__nicematrix_l_dim
@@ -3355,92 +3354,76 @@
\dim_set_eq:NN \l__nicematrix_y_final_dim \pgf@y
\__nicematrix_draw_line:
}
-\cs_set_protected:Npn \__nicematrix_cut_on_hyphen:w #1-#2\q_stop
+\cs_new_protected:Npn \__nicematrix_add_to_colors_seq:nn #1 #2
{
- \tl_set:Nn \l_tmpa_tl { #1 }
- \tl_set:Nn \l_tmpb_tl { #2 }
+ \int_zero:N \l_tmpa_int
+ \seq_map_indexed_inline:Nn \l__nicematrix_colors_seq
+ { \tl_if_eq:nnT { #1 } { ##2 } { \int_set:Nn \l_tmpa_int { ##1 } } }
+ \int_compare:nNnTF \l_tmpa_int = \c_zero_int
+ {
+ \seq_put_right:Nn \l__nicematrix_colors_seq { #1 }
+ \tl_set:cn { l__nicematrix_color _ \seq_count:N \l__nicematrix_colors_seq _ tl } { #2 }
+ }
+ { \tl_put_right:cn { l__nicematrix_color _ \int_use:N \l_tmpa_int _tl } { #2 } }
}
-\cs_new_protected:Npn \__nicematrix_cartesian_fill:
+\cs_generate_variant:Nn \__nicematrix_add_to_colors_seq:nn { x n }
+\cs_new_protected:Npn \__nicematrix_actually_color:
{
- \clist_map_inline:Nn \l__nicematrix_cols_tl
+ \pgfpicture
+ \pgf@relevantforpicturesizefalse
+ \seq_map_indexed_inline:Nn \l__nicematrix_colors_seq
{
- \tl_set:Nn \l_tmpa_tl { ##1 }
- \tl_if_in:NnTF \l_tmpa_tl { - }
- { \__nicematrix_cut_on_hyphen:w ##1 \q_stop }
- { \__nicematrix_cut_on_hyphen:w ##1 - ##1 \q_stop }
- \tl_if_empty:NT \l_tmpa_tl { \tl_set:Nn \l_tmpa_tl { 1 } }
- \tl_if_empty:NT \l_tmpb_tl
- { \tl_set:Nx \l_tmpb_tl { \int_use:N \c@jCol } }
- \int_compare:nNnT \l_tmpb_tl > \c@jCol
- { \tl_set:Nx \l_tmpb_tl { \int_use:N \c@jCol } }
- \__nicematrix_qpoint:n { col - \l_tmpa_tl }
- \bool_lazy_and:nnTF
- { \str_if_eq_p:Vn \l_tmpa_tl 0 }
- { \int_compare_p:nNn \l__nicematrix_first_col_int > 0 }
- { \dim_set:Nn \l_tmpc_dim { \pgf@x - 0.5 \arrayrulewidth } }
- { \dim_set:Nn \l_tmpc_dim { \pgf@x + 0.5 \arrayrulewidth } }
- \__nicematrix_qpoint:n { col - \__nicematrix_succ:n \l_tmpb_tl }
- \dim_set:Nn \l_tmpa_dim { \pgf@x + 0.5 \arrayrulewidth }
- \clist_map_inline:Nn \l__nicematrix_rows_tl
- {
- \tl_set:Nn \l_tmpa_tl { ####1 }
- \tl_if_in:NnTF \l_tmpa_tl { - }
- { \__nicematrix_cut_on_hyphen:w ####1 \q_stop }
- { \__nicematrix_cut_on_hyphen:w ####1 - ####1 \q_stop }
- \tl_if_empty:NT \l_tmpa_tl { \tl_set:Nn \l_tmpa_tl { 1 } }
- \tl_if_empty:NT \l_tmpb_tl
- { \tl_set:Nx \l_tmpb_tl { \int_use:N \c@iRow } }
- \int_compare:nNnT \l_tmpb_tl > \c@iRow
- { \tl_set:Nx \l_tmpb_tl { \int_use:N \c@iRow } }
- \__nicematrix_qpoint:n { row - \__nicematrix_succ:n \l_tmpb_tl }
- \dim_set:Nn \l_tmpb_dim { \pgf@y + 0.5 \arrayrulewidth }
- \__nicematrix_qpoint:n { row - \l_tmpa_tl }
- \dim_set:Nn \l_tmpd_dim { \pgf@y + 0.5 \arrayrulewidth }
- \pgfpathrectanglecorners
- { \pgfpoint \l_tmpc_dim \l_tmpd_dim }
- { \pgfpoint \l_tmpa_dim \l_tmpb_dim }
- }
+ \color ##2
+ \use:c { l__nicematrix_color _ ##1 _tl }
+ \pgfusepathqfill
}
- \pgfusepathqfill
+ \endpgfpicture
+ }
+\cs_set_protected:Npn \__nicematrix_cut_on_hyphen:w #1-#2\q_stop
+ {
+ \tl_set:Nn \l_tmpa_tl { #1 }
+ \tl_set:Nn \l_tmpb_tl { #2 }
}
\NewDocumentCommand \__nicematrix_rowcolor { O { } m m }
{
\tl_if_blank:nF { #2 }
{
- \pgfpicture
- \pgf@relevantforpicturesizefalse
- \tl_if_empty:nTF { #1 } \color { \color [ #1 ] } { #2 }
- \tl_set:Nn \l__nicematrix_rows_tl { #3 }
- \tl_set:Nn \l__nicematrix_cols_tl { - }
- \__nicematrix_cartesian_fill:
- \endpgfpicture
+ \__nicematrix_add_to_colors_seq:xn
+ { \tl_if_blank:nF { #1 } { [ #1 ] } { #2 } }
+ { \__nicematrix_rowcolor:n { #3 } }
}
}
+\cs_new_protected:Npn \__nicematrix_rowcolor:n #1
+ {
+ \tl_set:Nn \l__nicematrix_rows_tl { #1 }
+ \tl_set:Nn \l__nicematrix_cols_tl { - }
+ \__nicematrix_cartesian_path:
+ }
\NewDocumentCommand \__nicematrix_columncolor { O { } m m }
{
\tl_if_blank:nF { #2 }
{
- \pgfpicture
- \pgf@relevantforpicturesizefalse
- \tl_if_empty:nTF { #1 } \color { \color [ #1 ] } { #2 }
- \tl_set:Nn \l__nicematrix_rows_tl { - }
- \tl_set:Nn \l__nicematrix_cols_tl { #3 }
- \__nicematrix_cartesian_fill:
- \endpgfpicture
- }
+ \__nicematrix_add_to_colors_seq:xn
+ { \tl_if_blank:nF { #1 } { [ #1 ] } { #2 } }
+ { \__nicematrix_columncolor:n { #3 } }
+ }
+ }
+\cs_new_protected:Npn \__nicematrix_columncolor:n #1
+ {
+ \tl_set:Nn \l__nicematrix_rows_tl { - }
+ \tl_set:Nn \l__nicematrix_cols_tl { #1 }
+ \__nicematrix_cartesian_path:
}
\NewDocumentCommand \__nicematrix_rectanglecolor { O { } m m m }
{
\tl_if_blank:nF { #2 }
{
- \pgfpicture
- \pgf@relevantforpicturesizefalse
- \tl_if_empty:nTF { #1 } \color { \color [ #1 ] } { #2 }
- \__nicematrix_rectanglecolor_i:nn { #3 } { #4 }
- \endpgfpicture
+ \__nicematrix_add_to_colors_seq:xn
+ { \tl_if_blank:nF { #1 } { [ #1 ] } { #2 } }
+ { \__nicematrix_rectanglecolor:nn { #3 } { #4 } }
}
}
-\cs_new_protected:Npn \__nicematrix_rectanglecolor_i:nn #1 #2
+\cs_new_protected:Npn \__nicematrix_rectanglecolor:nn #1 #2
{
\__nicematrix_cut_on_hyphen:w #1 \q_stop
\tl_clear_new:N \l_tmpc_tl
@@ -3450,19 +3433,24 @@
\__nicematrix_cut_on_hyphen:w #2 \q_stop
\tl_set:Nx \l__nicematrix_rows_tl { \l_tmpc_tl - \l_tmpa_tl }
\tl_set:Nx \l__nicematrix_cols_tl { \l_tmpd_tl - \l_tmpb_tl }
- \__nicematrix_cartesian_fill:
+ \__nicematrix_cartesian_path:
}
\NewDocumentCommand \__nicematrix_cellcolor { O { } m m }
{
- \tl_if_blank:nF { #2 }
+ \clist_map_inline:nn { #3 }
+ { \__nicematrix_rectanglecolor [ #1 ] { #2 } { ##1 } { ##1 } }
+ }
+\NewDocumentCommand \__nicematrix_chessboardcolors { O { } m m }
+ {
+ \int_step_inline:nn { \int_use:N \c@iRow }
{
- \pgfpicture
- \pgf@relevantforpicturesizefalse
- \tl_if_empty:nTF { #1 } \color { \color [ #1 ] } { #2 }
- \clist_map_inline:nn { #3 }
- { \__nicematrix_rectanglecolor_i:nn { ##1 } { ##1 } }
- \pgfusepathqfill
- \endpgfpicture
+ \int_step_inline:nn { \int_use:N \c@jCol }
+ {
+ \int_if_even:nTF { ####1 + ##1 }
+ { \__nicematrix_cellcolor [ #1 ] { #2 } }
+ { \__nicematrix_cellcolor [ #1 ] { #3 } }
+ { ##1 - ####1 }
+ }
}
}
\keys_define:nn { NiceMatrix / rowcolors }
@@ -3530,7 +3518,8 @@
\color
{ \color [ #1 ] }
{ #3 }
- \__nicematrix_cartesian_fill:
+ \__nicematrix_cartesian_path:
+ \pgfusepathqfill
}
\bool_set_false:N \l_tmpa_bool
}
@@ -3541,7 +3530,8 @@
\color
{ \color [ #1 ] }
{ #4 }
- \__nicematrix_cartesian_fill:
+ \__nicematrix_cartesian_path:
+ \pgfusepathqfill
}
\bool_set_true:N \l_tmpa_bool
}
@@ -3575,16 +3565,43 @@
\prg_return_true:
\prg_return_false:
}
-\NewDocumentCommand \__nicematrix_chessboardcolors { O { } m m }
+\cs_new_protected:Npn \__nicematrix_cartesian_path:
{
- \int_step_inline:nn { \int_use:N \c@iRow }
+ \clist_map_inline:Nn \l__nicematrix_cols_tl
{
- \int_step_inline:nn { \int_use:N \c@jCol }
+ \tl_set:Nn \l_tmpa_tl { ##1 }
+ \tl_if_in:NnTF \l_tmpa_tl { - }
+ { \__nicematrix_cut_on_hyphen:w ##1 \q_stop }
+ { \__nicematrix_cut_on_hyphen:w ##1 - ##1 \q_stop }
+ \tl_if_empty:NT \l_tmpa_tl { \tl_set:Nn \l_tmpa_tl { 1 } }
+ \tl_if_empty:NT \l_tmpb_tl
+ { \tl_set:Nx \l_tmpb_tl { \int_use:N \c@jCol } }
+ \int_compare:nNnT \l_tmpb_tl > \c@jCol
+ { \tl_set:Nx \l_tmpb_tl { \int_use:N \c@jCol } }
+ \__nicematrix_qpoint:n { col - \l_tmpa_tl }
+ \int_compare:nNnTF \l__nicematrix_first_col_int = \l_tmpa_tl
+ { \dim_set:Nn \l_tmpc_dim { \pgf@x - 0.5 \arrayrulewidth } }
+ { \dim_set:Nn \l_tmpc_dim { \pgf@x + 0.5 \arrayrulewidth } }
+ \__nicematrix_qpoint:n { col - \__nicematrix_succ:n \l_tmpb_tl }
+ \dim_set:Nn \l_tmpa_dim { \pgf@x + 0.5 \arrayrulewidth }
+ \clist_map_inline:Nn \l__nicematrix_rows_tl
{
- \int_if_even:nTF { ####1 + ##1 }
- { \__nicematrix_cellcolor [ #1 ] { #2 } }
- { \__nicematrix_cellcolor [ #1 ] { #3 } }
- { ##1 - ####1 }
+ \tl_set:Nn \l_tmpa_tl { ####1 }
+ \tl_if_in:NnTF \l_tmpa_tl { - }
+ { \__nicematrix_cut_on_hyphen:w ####1 \q_stop }
+ { \__nicematrix_cut_on_hyphen:w ####1 - ####1 \q_stop }
+ \tl_if_empty:NT \l_tmpa_tl { \tl_set:Nn \l_tmpa_tl { 1 } }
+ \tl_if_empty:NT \l_tmpb_tl
+ { \tl_set:Nx \l_tmpb_tl { \int_use:N \c@iRow } }
+ \int_compare:nNnT \l_tmpb_tl > \c@iRow
+ { \tl_set:Nx \l_tmpb_tl { \int_use:N \c@iRow } }
+ \__nicematrix_qpoint:n { row - \__nicematrix_succ:n \l_tmpb_tl }
+ \dim_set:Nn \l_tmpb_dim { \pgf@y + 0.5 \arrayrulewidth }
+ \__nicematrix_qpoint:n { row - \l_tmpa_tl }
+ \dim_set:Nn \l_tmpd_dim { \pgf@y + 0.5 \arrayrulewidth }
+ \pgfpathrectanglecorners
+ { \pgfpoint \l_tmpc_dim \l_tmpd_dim }
+ { \pgfpoint \l_tmpa_dim \l_tmpb_dim }
}
}
}
@@ -4371,7 +4388,17 @@
\cs_new:Npn \__nicematrix_Block_i #1-#2 \q_stop { \__nicematrix_Block_ii:nnnnn { #1 } { #2 } }
\cs_new_protected:Npn \__nicematrix_Block_ii:nnnnn #1 #2 #3 #4 #5
{
- \int_compare:nNnTF { #2 } = 1
+ \bool_lazy_or:nnTF
+ { \tl_if_blank_p:n { #1 } }
+ { \str_if_eq_p:nn { #1 } { * } }
+ { \int_set:Nn \l_tmpa_int { 100 } }
+ { \int_set:Nn \l_tmpa_int { #1 } }
+ \bool_lazy_or:nnTF
+ { \tl_if_blank_p:n { #2 } }
+ { \str_if_eq_p:nn { #2 } { * } }
+ { \int_set:Nn \l_tmpb_int { 100 } }
+ { \int_set:Nn \l_tmpb_int { #2 } }
+ \int_compare:nNnTF \l_tmpb_int = 1
{
\tl_if_empty:NTF \l__nicematrix_cell_type_tl
{ \tl_set:Nn \l__nicematrix_pos_of_block_tl c }
@@ -4379,12 +4406,6 @@
}
{ \tl_set:Nn \l__nicematrix_pos_of_block_tl c }
\keys_set_known:nn { NiceMatrix / Block / FirstPass } { #3 }
- \tl_if_empty:nTF { #1 }
- { \int_set:Nn \l_tmpa_int { 100 } }
- { \int_set:Nn \l_tmpa_int { #1 } }
- \tl_if_empty:nTF { #2 }
- { \int_set:Nn \l_tmpb_int { 100 } }
- { \int_set:Nn \l_tmpb_int { #2 } }
\tl_set:Nx \l_tmpa_tl
{
{ \int_use:N \c@iRow }
@@ -4395,11 +4416,11 @@
\bool_lazy_or:nnTF
{ \int_compare_p:nNn { \l_tmpa_int } = 1 }
{ \int_compare_p:nNn { \l_tmpb_int } = 1 }
- { \exp_args:Nxx \__nicematrix_Block_iii:nnnnn }
{ \exp_args:Nxx \__nicematrix_Block_iv:nnnnn }
+ { \exp_args:Nxx \__nicematrix_Block_v:nnnnn }
{ \l_tmpa_int } { \l_tmpb_int } { #3 } { #4 } { #5 }
}
-\cs_new_protected:Npn \__nicematrix_Block_iii:nnnnn #1 #2 #3 #4 #5
+\cs_new_protected:Npn \__nicematrix_Block_iv:nnnnn #1 #2 #3 #4 #5
{
\int_gincr:N \g__nicematrix_block_box_int
\cs_set_protected_nopar:Npn \diagbox ##1 ##2
@@ -4494,7 +4515,7 @@
}
}
}
-\cs_new_protected:Npn \__nicematrix_Block_iv:nnnnn #1 #2 #3 #4 #5
+\cs_new_protected:Npn \__nicematrix_Block_v:nnnnn #1 #2 #3 #4 #5
{
\seq_gput_right:Nx \g__nicematrix_blocks_seq
{
@@ -4558,9 +4579,9 @@
\cs_new_protected:Npn \__nicematrix_draw_blocks:
{
\cs_set_eq:NN \ialign \__nicematrix_old_ialign:
- \seq_map_inline:Nn \g__nicematrix_blocks_seq { \__nicematrix_Block_iii:nnnnnn ##1 }
+ \seq_map_inline:Nn \g__nicematrix_blocks_seq { \__nicematrix_Block_iv:nnnnnn ##1 }
}
-\cs_new_protected:Npn \__nicematrix_Block_iii:nnnnnn #1 #2 #3 #4 #5 #6
+\cs_new_protected:Npn \__nicematrix_Block_iv:nnnnnn #1 #2 #3 #4 #5 #6
{
\int_zero_new:N \l__nicematrix_last_row_int
\int_zero_new:N \l__nicematrix_last_col_int
@@ -4586,9 +4607,9 @@
}
{ \msg_error:nnnn { nicematrix } { Block~too~large~1 } { #1 } { #2 } }
}
- { \__nicematrix_Block_iv:nnnnnn { #1 } { #2 } { #3 } { #4 } { #5 } { #6 } }
+ { \__nicematrix_Block_v:nnnnnn { #1 } { #2 } { #3 } { #4 } { #5 } { #6 } }
}
-\cs_new_protected:Npn \__nicematrix_Block_iv:nnnnnn #1 #2 #3 #4 #5 #6
+\cs_new_protected:Npn \__nicematrix_Block_v:nnnnnn #1 #2 #3 #4 #5 #6
{
\seq_gput_left:Nn \g__nicematrix_pos_of_blocks_seq { { #1 } { #2 } { #3 } { #4 } }
\group_begin:
@@ -5147,7 +5168,7 @@
}
\__nicematrix_msg_new:nn { ampersand~in~light-syntax }
{
- You~can't~use~an~ampersand~(\token_to_str &)~to~separate~columns~because
+ You~can't~use~an~ampersand~(\token_to_str:N &)~to~separate~columns~because~
~you~have~used~the~key~'light-syntax'.~This~error~is~fatal.
}
\__nicematrix_msg_new:nn { double-backslash~in~light-syntax }
@@ -5309,6 +5330,7 @@
The~available~keys~are~(in~alphabetic~order):~
allow-duplicate-names,~
cell-space-bottom-limit,~
+ cell-space-limits,~
cell-space-top-limit,~
code-for-first-col,~
code-for-first-row,~
@@ -5354,6 +5376,7 @@
baseline,~
c,~
cell-space-bottom-limit,~
+ cell-space-limits,~
cell-space-top-limit,~
code-after,~
code-for-first-col,~
@@ -5405,6 +5428,7 @@
baseline,~
c,~
cell-space-bottom-limit,~
+ cell-space-limits,~
cell-space-top-limit,~
code-after,~
code-for-first-col,~
@@ -5456,6 +5480,7 @@
baseline,~
c,~
cell-space-bottom-limit,~
+ cell-space-limits,~
cell-space-top-limit,~
code-after,~
code-for-first-col,~