tabularray: Use o pacote `caption` para formatar a legenda da tabela enquanto compõe tabelas sem legenda ou entrada LOT

tabularray: Use o pacote `caption` para formatar a legenda da tabela enquanto compõe tabelas sem legenda ou entrada LOT

Estou escrevendo um documento mais longo dividido \frontmattere \mainmatterusando a scrbookclasse. Embora tanto uma legenda de tabela quanto uma entrada LOT devam ser geradas para tabelas fornecidas no assunto principal, ambos os itens precisam ser omitidos/suprimidos para tabelas fornecidas no frontmatter (pense, por exemplo, lista de abreviações, lista de símbolos ...).

Além disso, para ter uma formatação consistente de legendas para tabelas, figuras, listagens etc., decidi contar com o captionpacote.

Utilizando o captionpacote para formatar a legenda das tabularraytabelas conforme elaborado em diversos locais como:

Da mesma forma, a criação de tabelas sem legenda e entrada LOT é descrita em vários casos:

Se você escrever entry=none, o pacote tabularray não adicionará uma entrada na Lista de Tabelas. Portanto caption=text,entry=none é semelhante a \caption[]{text} em tabela longa. Se você escrever label=none, o pacote tabularray não percorrerá o contador da tabela e definirá os elementos caption-tag e caption-sep (veja abaixo) como vazios. Portanto caption=text,entry=none,label=none é semelhante a \caption*{text} em tabela longa, exceto pelo contador.

Embora ambas as abordagens funcionem quando usadas sozinhas (talvez eu tenha perdido alguns casos extremos), não consigo que funcionem em combinação.

o que estou perdendo? Como posso usar o captionpacote para formatar as legendas de uma tabularraytabela suportando tanto tabelas sem legendas e entradas LOT (no frontmatter) quanto tabelas "normais" (no mainmatter) do meu documento?

MWE:

\documentclass{scrbook}
\usepackage[english]{babel}

\usepackage[
    font={footnotesize, sf},
    labelfont={bf},
]{caption}

\usepackage{tabularray}
\usepackage{tblr-extras}
\UseTblrLibrary{booktabs}
\UseTblrLibrary{caption}

% remove continuation line at table footer
\DefTblrTemplate{contfoot-text}{default}{}

% define table template with empty captions on first and continued table instances,
% remove continuation line in footer
\DeclareTblrTemplate{caption}{nocaptemplate}{}
\DeclareTblrTemplate{capcont}{nocaptemplate}{}
\DefTblrTemplate{contfoot}{nocaptemplate}{}

% use table template to define new theme
\NewTblrTheme{mytabletheme}{
  \SetTblrTemplate{caption}{nocaptemplate}{}
  \SetTblrTemplate{capcont}{nocaptemplate}{}
  \SetTblrTemplate{caption-lot}{empty}
}

\begin{document}

\frontmatter

\chapter{First Chapter in Frontmatter}

This chapter contains a table without any caption, label or LOT entry:
\begin{itemize}
    \item \texttt{entry = none}
    \item \texttt{label = none}
\end{itemize}

Problem: (Empty) caption and LOT entry are provided, when using \texttt{caption} and \texttt{tblr-extras} packages for formatting. Uncomment corresponding lines in header to see that is it working without the these two packages.

\begin{longtblr}[
    entry = none,
    label = none,
    % apply theme to obtain table without caption on continued table
    theme = mytabletheme,
    ]{
        colspec={
            l
            X[l]
        },
        rowhead = 1, rowfoot = 0,
    }
    \toprule
    column 1 & column 2 \\
    \midrule
    a & b \\
    \pagebreak
    a & b \\
    \bottomrule
\end{longtblr}

\listoftables

\mainmatter

\chapter{First Chapter in Mainmatter}

This chapter contains a table with caption, label and LOT entry.

\begin{longtblr}[
    caption = {The first table with caption},
    entry = {The first table with caption},
    label = {tbl:first_table_with_caption},
    ]{
        colspec={
            l
            X[l]
        },
        rowhead = 1, rowfoot = 0,
    }
    \toprule
    column 1 & column 2 \\
    \midrule
    a & b \\
    \pagebreak
    a & b \\
    \bottomrule
\end{longtblr}

\end{document}

informação relacionada