diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty | 297 |
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,~ |