Ich schreibe ein längeres Dokument, das in die Klasse unterteilt ist \frontmatter
und \mainmatter
diese verwendet scrbook
. Während für Tabellen im Hauptteil sowohl eine Tabellenüberschrift als auch ein LOT-Eintrag generiert werden sollen, müssen für Tabellen im Vorspann beide Elemente weggelassen/unterdrückt werden (denken Sie z. B. an Abkürzungsverzeichnis, Symbolverzeichnis ...).
Um darüber hinaus eine einheitliche Beschriftungsformatierung für Tabellen, Abbildungen, Auflistungen usw. zu erhalten, habe ich mich entschieden, auf das caption
Paket zu vertrauen.
Die Verwendung des caption
Pakets zum Formatieren von Tabellenüberschriften tabularray
wurde an mehreren Stellen erläutert, beispielsweise:
- Wie kopiere ich die Formatierung automatisch von \usepackage{caption} in die Überschrift von tabularray?
- Verwenden Sie den mit dem Untertitelpaket in longtblr von tabularray definierten Untertitelstil
- Tabellenbeschriftungen (Fortsetzung)
Ebenso wird das Erstellen von Tabellen ohne Überschrift und LOT-Eintrag mehrfach beschrieben:
tabularray
's Handbuch (https://ftp.rrzn.uni-hannover.de/pub/mirror/tex-archive/macros/latex/contrib/tabularray/tabularray.pdf, Ende von Abschnitt 4.1):
Wenn Sie entry=none schreiben, fügt das tabularray-Paket keinen Eintrag zur Tabellenliste hinzu. Daher ist caption=text,entry=none ähnlich wie \caption[]{text} in longtable. Wenn Sie label=none schreiben, wird das tabularray-Paket den Tabellenzähler nicht schrittweise erhöhen und die Elemente caption-tag und caption-sep (siehe unten) auf leer setzen. Daher ist caption=text,entry=none,label=none ähnlich wie \caption*{text} in longtable, mit Ausnahme des Zählers.
- Wie kann ich mit tabularray die Überschrift einer Fortsetzungstabelle auf der zweiten Seite auslassen?
- Entfernen Sie die Tabellenbezeichnung innerhalb von „longtblr“.
Während beide Ansätze einzeln funktionieren (ich habe möglicherweise einige Randfälle übersehen), funktioniert es bei mir in Kombination nicht.
Was übersehe ich? Wie kann ich das caption
Paket verwenden, um die Überschriften einer tabularray
Tabelle zu formatieren, wobei sowohl Tabellen ohne Überschriften und LOT-Einträge (im Vorspann) als auch „normale“ Tabellen (im Hauptteil) meines Dokuments unterstützt werden?
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}