longtable erhöht Tabellenzähler auch ohne caption

Tabellen und Grafiken erstellen und anordnen


IrenaSekuta
Forum-Century
Forum-Century
Beiträge: 230
Registriert: Di 2. Dez 2008, 10:05

longtable erhöht Tabellenzähler auch ohne caption

Beitrag von IrenaSekuta »

Hallo zusammen,

mir ist bei der Verwendung des Paketes "longtable" etwas aufgefallen, und ich möchte gerne klären ob es ein Bug ist oder ob ich etwas falsch verstehe.

Ich bin der Meinung, dass bei Verwendung einer Longtable-Tabelle ohne eine Tabellenüberschrift, keine Erhöhung des internen Tabellenzählers erfolgen sollte. Dem ist aber nicht so, wie das folgende Minimalbeispiel zeigt:
\documentclass{scrartcl} 
\usepackage{longtable}
\usepackage{booktabs}
\usepackage{caption}
\begin{document} 

\listoftables

\begin{longtable}{l l l l}

% Tabellenanfang
\caption[longtable]{Eine Tabellenüberschrift}\\
\toprule
Spalte 1 & Spalte 2 & Spalte 3 & Spalte 4\\
\midrule
\endfirsthead

% Tabellenkopf auf Folgeseiten
\caption[]{..Fortsetzung..}\\
%\multicolumn{4}{l}{\tiny ...Fortsetzung von vorheriger Seite}\\
\toprule
Spalte 1 & Spalte 2 & Spalte 3 & Spalte 4\\
\midrule
\endhead

\hline
\multicolumn{4}{r}{\tiny Fortsetzung nächste Seite...}\\
\endfoot

\bottomrule
\endlastfoot

Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
\end{longtable}

\begin{center}
\captionof{table}[tabular]{Einfach eine Tabellenüberschrift}
\begin{tabular}{l l}
\toprule
Spalte 1 & Spalte 2\\
\midrule
Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text\\
\bottomrule
\end{tabular}
\end{center}

Und hier nun eine longtable-Tabelle ohne caption:

\begin{longtable}{l l l l}

% Tabellenanfang
\toprule
Spalte 1 & Spalte 2 & Spalte 3 & Spalte 4\\
\midrule
\endfirsthead

% Tabellenkopf auf Folgeseiten
\multicolumn{4}{l}{\tiny ...Fortsetzung von vorheriger Seite}\\
\toprule
Spalte 1 & Spalte 2 & Spalte 3 & Spalte 4\\
\midrule
\endhead

\hline
\multicolumn{4}{r}{\tiny Fortsetzung nächste Seite...}\\
\endfoot

\bottomrule
\endlastfoot

Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
\end{longtable}

\begin{center}
\captionof{table}[tabular nach longtable ohne caption]{Einfach eine Tabellenüberschrift}
\begin{tabular}{l l}
\toprule
Spalte 1 & Spalte 2\\
\midrule
Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text\\
\bottomrule
\end{tabular}
\end{center}

\end{document}
Die letzte Tabelle müsste m.E. die Nummer 3 haben und nicht vier.

Gruß,

Irena
----------------------------------
- WinXP und Win 7 und ansatzweise Ubuntu 9.10 :-)
- Miktex 2.9 (Portable)
- WinEdt 6

sommerfee
Forum-Century
Forum-Century
Beiträge: 219
Registriert: Sa 12. Jul 2008, 08:02

Re: longtable erhöht Tabellenzähler auch ohne caption

Beitrag von sommerfee »

IrenaSekuta hat geschrieben:mir ist bei der Verwendung des Paketes "longtable" etwas aufgefallen, und ich möchte gerne klären ob es ein Bug ist oder ob ich etwas falsch verstehe.
Es ist kein Bug, sondern eine Designentscheidung des Autors des longtable-Paketes, die leider im Widerspruch zum Verhalten von table steht.

Wenn du eine longtable ohne Zählererhöhung haben möchtest, kannst du entweder den Zähler mit \addtocounter{table}{-1} selber korrigieren, oder aber das ltcaption-Paket einbinden und longtable* statt longtable verwenden. Die erste Methode macht Ärger mit hyperref (ist aber völlig ausreichend, wenn kein hyperref verwendet wird), die zweite nicht.

Liebe Grüße,
Axel

IrenaSekuta
Forum-Century
Forum-Century
Beiträge: 230
Registriert: Di 2. Dez 2008, 10:05

Beitrag von IrenaSekuta »

Hallo Alex,

herzlichen Dank für deine Antwort. Nun ist wieder etwas mehr Licht im Tunnel. :-)

Meiner Meinung nach ist es eindeutig ein Bug. Der Zähler fürd ei Tabellennummerierung dürfte doch nur erhöhtt werden, wenn ich auch eine Tabellenüberschrift mit Nummerierung wünsche. Alles andere ist doch schlicht und ergreifend logisch falsch.

Deine Hinweise habe ich befolgt und kann Sie nachvollziehen. Ich bin auf das Problem aufmerksam geworden, da ich das Paket 'ltablex' nutze, das die Eigenschaften von longtable und tabularx vereint.
\documentclass{scrartcl}
%\usepackage[T1]{fontenc}
%\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{babel}

\usepackage{ltablex}
\usepackage{ltcaption}
\usepackage{booktabs}
\usepackage{caption}
\usepackage{hyperref}
\begin{document} 

\listoftables

Hier eine tabularx-Tabelle mit Tabellenüberschrift:

\begingroup
\centering
\tiny
%\captionof{table}[tabularx]{Eine Tabellenübschrift}\label{Tab001}   % <<-- Hilfkonstruktion, um kurze Tabellenüberschriften fürs LOT generieren zu können
%\keepXColumns
\begin{tabularx}{\textwidth}{l l l X}
% Tabellenanfang
%\caption[tabularx]{Eine Tabellenübschrift}\label{Tab001}\\          % Funktioniert zwar mir longtable aber nicht mit ltablex
\caption{Eine Tabellenübschrift}\label{Tab001}\\			% So funktioniert es auch ohne die Hilfskonstruktionen
\toprule
Spalte 1 & Spalte 2 & Spalte 3 & Spalte 4\\
\midrule
\endfirsthead

% Tabellenkopf auf Folgeseiten
\multicolumn{4}{l}{\tiny ...Fortsetzung von vorheriger Seite}\\
\toprule
Spalte 1 & Spalte 2 & Spalte 3 & Spalte 4\\
\midrule
\endhead

% Tabelleninhalt
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\

\end{tabularx}
%\addtocounter{table}{-1} 			% << Hilfskonstruktion, um die Zählererhöhung von longtablewieder zurückzusetzen (Problem: Hyperlink verlinkt nicht mehr richtig!)
\endgroup

\newpage

Folgend eine tabular-Tabelle mit Tabellenüberschrift:

\begin{center}
\captionof{table}[tabular]{Einfach eine Tabellenüberschrift}\label{Tab002}
\begin{tabular}{l l}
\toprule
Spalte 1 & Spalte 2\\
\midrule
Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text\\
\bottomrule
\end{tabular}
\end{center}

\newpage

Und hier nun eine longtable*-Tabelle ohne Tabellenüberschrift:

\begin{center}
\begin{longtable*}{l l l l}

% Tabellenanfang
\toprule
Spalte 1 & Spalte 2 & Spalte 3 & Spalte 4\\
\midrule
\endfirsthead

% Tabellenkopf auf Folgeseiten
\multicolumn{4}{l}{\tiny ...Fortsetzung von vorheriger Seite}\\
\toprule
Spalte 1 & Spalte 2 & Spalte 3 & Spalte 4\\
\midrule
\endhead

% Tabellenfuß
\hline
\multicolumn{4}{r}{\tiny Fortsetzung nächste Seite...}\\
\endfoot

% Tabellenfuß für letzte Tabellenseite
\bottomrule
\endlastfoot

%Tabelleninhalt
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\

\end{longtable*}
\end{center}

\newpage

Und als letztes eine tabular-Tabelle mit Tabellenüberschrift. Der Tabellenzähler müsste nun auf 3 stehen.

\begin{center}
\captionof{table}[tabular nach longtable ohne caption]{Einfach eine Tabellenüberschrift}\label{Tab003}
\begin{tabular}{l l}
\toprule
Spalte 1 & Spalte 2\\
\midrule
Ein bissel Text & Ein bissel Text\\
Ein bissel Text & Ein bissel Text\\
\bottomrule
\end{tabular}
\end{center}

Und nun ein paar Verweise:

Tabelle  \ref{Tab001}
Tabelle  \ref{Tab002}
Tabelle  \ref{Tab003}

\end{document}
Werde mal den Autor anschreiben und ihn darauf aufmerksam machen, in der Hoffnung, dass er es auch als Bug ansieht und weniger als Designentscheidung. :-)

Schönes Wochenende,

Irena
----------------------------------
- WinXP und Win 7 und ansatzweise Ubuntu 9.10 :-)
- Miktex 2.9 (Portable)
- WinEdt 6

sommerfee
Forum-Century
Forum-Century
Beiträge: 219
Registriert: Sa 12. Jul 2008, 08:02

Beitrag von sommerfee »

IrenaSekuta hat geschrieben:Meiner Meinung nach ist es eindeutig ein Bug. Der Zähler fürd ei Tabellennummerierung dürfte doch nur erhöhtt werden, wenn ich auch eine Tabellenüberschrift mit Nummerierung wünsche. Alles andere ist doch schlicht und ergreifend logisch falsch.
Man könnte auch anders argumentieren: Jede Tabelle hat eine eindeutige Nummer, und \caption ist nur ein Weg von vielen, diese auch auszugeben. Daher ist es logisch falsch, wenn \caption den Zähler erhöht. (Das - neben meiner einer - sehr viele Anwender ebenfalls dieser Meinung sind, zeigt, daß \label fälschlicherweise oftmals vor \caption angewandt wird.)

Inkonsistent ist es aber so oder so, aber wenn man heute was konsistentes haben möchte, nimmt man ConTeXt und nicht LaTeX 2e, was lediglich durch einen Haufen Paketautoren am Leben gehalten wird.
Werde mal den Autor anschreiben und ihn darauf aufmerksam machen, in der Hoffnung, dass er es auch als Bug ansieht und weniger als Designentscheidung. :-)
AFAIK macht David Carlisle schon lange nichts mehr an LaTeX bzw. den Paketen von ihm. Und selbst wenn, ist dies nach über 15 Jahren nicht mehr änderbar, durch die Zeit ist aus dem Bug ein Feature geworden.

Liebe Grüße,
Axel

IrenaSekuta
Forum-Century
Forum-Century
Beiträge: 230
Registriert: Di 2. Dez 2008, 10:05

Beitrag von IrenaSekuta »

Hallo Alex,

Vielen Dank für dein sehr, sehr hilfreiche Erklärung.

Gruß,

Irena[/quote]
----------------------------------
- WinXP und Win 7 und ansatzweise Ubuntu 9.10 :-)
- Miktex 2.9 (Portable)
- WinEdt 6

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

sommerfee hat geschrieben:aber wenn man heute was konsistentes haben möchte, nimmt man ConTeXtl
Wobei die Konsistenz nur für ConTeXt selbst gilt. Es gibt auch bei ConTeXt Erweiterungen, die nicht von Hans sind (z. B. das Paket für das pracTeX-Journal). Die Konsistenz von ConTeXt wird dadurch erkauft, dass ein erheblicher Teil der Funktionalität vom Kern selbst bereitgestellt wird, dieser von einer einzigen Instanz bestimmt wird und immer mal wieder umgemodelt wird. Im Augenblick überarbeitet Hand AFAIKmk 4 so grundsätzlich, dass Dinge immer mal wieder nicht mehr funktionieren. ;-)

Beim letzten TeX-Stammtisch wurde außerdem von einem ConTeXt-Anwender erwähnt, dass Hans Interna oftmals nicht dokumentiert und wenig Auskünfte dazu gibt, damit er die jederzeit ändern kann. Das hilft natürlich ebenfalls dabei, Dinge konsistent zu halten, erschwert andererseits fortgeschrittenen Anwendern bzw. Entwicklern teilweise die Arbeit. Vorteilhaft wirkt sich außerdem aus, dass inzwischen nicht mehr auf Makro-Ebene um die Mängel der Maschine TeX herumprogrammiert wird, sondern ConTeXt und luaTeX quasi zusammen weiterentwickelt werden. Wenn es bei der Maschine klemmt, wird eben diese erweitert/geändert.

Um keine Missverständnisse aufkommen zu lassen: Das soll keine Kritik an ConTeXt oder Hans Arbeit oder Person sein. Ich habe tiefen Respekt für die Leistung. Ich wollte nur erwähnen, dass bei ConTeXt nicht nur eine andere Bedienphilosophie, sondern auch eine andere Entwicklungsphilosophie verfolgt wird.

IrenaSekuta
Forum-Century
Forum-Century
Beiträge: 230
Registriert: Di 2. Dez 2008, 10:05

Beitrag von IrenaSekuta »

Möchte das Thema noch einmal gerne aufgreifen.

das Paket ltcaption bietet die Umgebung longtable*, was ein >Hochsetzen des Tabellenzählers unterbindet. Leider funktioniert das bei der tabularx-Umgebung nicht zwingend.

Der Hinweis "\addtocounter{table}{-1}" brachte mich auf die Idee, diesen Befehl doch direkt nach \captionof{}table}[LOT]{Tabellenüberschrift} durchzuführen. Die Verlinkung mit Hyperlink ist auf den ersten Blick auch okay.
\documentclass{scrartcl} 
\usepackage[ngerman]{babel} 

\usepackage{ltablex} 
\usepackage{ltcaption} 
\usepackage{booktabs} 
\usepackage{caption} 
\usepackage{hyperref} 
\begin{document} 

\listoftables 

\newpage 
Folgend eine tabular-Tabelle mit Tabellenüberschrift: 

\begin{center} 
\captionof{table}[tabular]{Einfach eine Tabellenüberschrift}\label{Tab002} 
\begin{tabular}{l l} 
\toprule 
Spalte 1 & Spalte 2\\ 
\midrule 
Ein bissel Text & Ein bissel Text\\ 
Ein bissel Text & Ein bissel Text\\ 
\bottomrule 
\end{tabular} 
\end{center} 

\newpage 
Folgend eine tabular-Tabelle mit Tabellenüberschrift: 

\begin{center} 
\captionof{table}[tabular]{Einfach eine Tabellenüberschrift}\label{Tab002} 
\begin{tabular}{l l} 
\toprule 
Spalte 1 & Spalte 2\\ 
\midrule 
Ein bissel Text & Ein bissel Text\\ 
Ein bissel Text & Ein bissel Text\\ 
\bottomrule 
\end{tabular} 
\end{center} 

\newpage 
Folgend eine tabular-Tabelle mit Tabellenüberschrift: 

\begin{center} 
\captionof{table}[tabular]{Einfach eine Tabellenüberschrift}\label{Tab002} 
\begin{tabular}{l l} 
\toprule 
Spalte 1 & Spalte 2\\ 
\midrule 
Ein bissel Text & Ein bissel Text\\ 
Ein bissel Text & Ein bissel Text\\ 
\bottomrule 
\end{tabular} 
\end{center} 
\newpage

Hier eine tabularx-Tabelle mit Tabellenüberschrift: 

\begingroup 
\centering 
\tiny 
\captionof{table}[tabularx]{Eine Tabellenübschrift}\label{Tab001}
\addtocounter{table}{-1}
%\keepXColumns 
\begin{tabularx}{\textwidth}{l l l X} 
% Tabellenanfang 
\toprule 
Spalte 1 & Spalte 2 & Spalte 3 & Spalte 4\\ 
\midrule 
\endfirsthead 

% Tabellenkopf auf Folgeseiten 
\multicolumn{4}{l}{\tiny ...Fortsetzung von vorheriger Seite}\\ 
\toprule 
Spalte 1 & Spalte 2 & Spalte 3 & Spalte 4\\ 
\midrule 
\endhead 

% Tabelleninhalt 
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\ 
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\ 
Ein bissel Text & Ein bissel Text & Ein bissel Text & Ein bissel Text\\ 

\end{tabularx} 
\endgroup 



\newpage 
Folgend eine tabular-Tabelle mit Tabellenüberschrift: 

\begin{center} 
\captionof{table}[tabular]{Einfach eine Tabellenüberschrift}\label{Tab002} 
\begin{tabular}{l l} 
\toprule 
Spalte 1 & Spalte 2\\ 
\midrule 
Ein bissel Text & Ein bissel Text\\ 
Ein bissel Text & Ein bissel Text\\ 
\bottomrule 
\end{tabular} 
\end{center} 
Das Paket 'ltablex' gefällt mir sehr gut, schade dass es nicht weiterentwickelt wird. Würde man die Änderungen von 'ltcaption' mit einigen Erweiterungen bzgl. der tabularx-Tabelle dort einbauen, wäre es m.E. ein geniales Paket für Tabellenumgebungen.

Gruß,

Irena
----------------------------------
- WinXP und Win 7 und ansatzweise Ubuntu 9.10 :-)
- Miktex 2.9 (Portable)
- WinEdt 6

sommerfee
Forum-Century
Forum-Century
Beiträge: 219
Registriert: Sa 12. Jul 2008, 08:02

Beitrag von sommerfee »

IrenaSekuta hat geschrieben:Der Hinweis "\addtocounter{table}{-1}" brachte mich auf die Idee, diesen Befehl doch direkt nach \captionof{}table}[LOT]{Tabellenüberschrift} durchzuführen.
Das ltablex-Paket macht tabularx zu einer longtable. Diese erwartet dann die \caption *IN* der Tabelle, genau wie bei longtable.

Was mir bei dieser Gelegenheit völlig schleierhaft ist, ist, warum ltablex nicht eine *eigene* Umgebung anbietet (meinetwegen "tabulary" oder "longtablex" oder was auch immer) anstatt tabularx derart zu verbriegeln, so daß alleine ein Einbinden des Paketes reicht, um eine existierende und richtige Tabellennummerierung total durcheinanderzubringen. Das hat schon grob fahrlässige Züge auf mich.
Die Verlinkung mit Hyperlink ist auf den ersten Blick auch okay.
In diesem Falle ja, weil in diesem Falle die Verlinkung auf die caption der tabularx darunter leiden würde, da diese aber gar keine caption hat, sollte auch so alles ok sein.

Liebe Grüße,
Axel

P.S.: Ich werde mir bei Gelegenheit das ltablex-Paket anschauen, um zu sehen, wie einfach oder schwer eine Implementierung von "tabularx*" in ltcaption wäre. Obwohl ich es dann lieber "longtablex*" nennen würde, ansonsten kommen die Leute auf die Idee, tabularx* würde auch ohne ltablex-Paket funktionieren. Ich fürchte schon fast, es wird darauf hinauslaufen, daß ich in ltcaption "longtablex" und "longtablex*" komplett selber anbiete, anstatt auf ltablex aufzubauen...

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

ltablex basiert übrigens auf den 1994er Versionen sowohl von longtable als auch von tabularx und wird AFAIK seit Jahrzehnten nicht gepflegt. Vor ein paar Jahren dachte ich mal, dass es gegenüber ltxtable die bessere Alternative wäre, hatte dann aber ein paar Probleme damit, weshalb ich es wieder verworfen habe. Leider weiß ich nicht mehr welche Probleme das waren, mir ist nur in Erinnerung geblieben, dass ich es nicht mehr verwenden will.

Da das Paket außerdem eine vollkommen ungeklärte Lizenz hat, ist es auch nicht Bestandteil von TeX Live.

Zu ltxtable wiederum hat der Autor inzwischen verlauten lassen, dass die Notwendigkeit für externe Dateien mit einem modernen TeX (er meinte vermutlich e-TeX mit \scantoken etc.) genau genommen nicht mehr besteht und das Paket deshalb eigentlich veraltet ist. Ich schließe daraus, dass David auch hier keinerlei Grund für eine Aktuallisierung sieht.

Insgesamt wäre es vermutlich eine gute Idee, aus longtable und ltxtable oder tablex ein neues Paket zu entwickeln, das auch wieder gepflegt wird. Die Frage dabei ist nur immer: Wer soll das leisten? :(

sommerfee
Forum-Century
Forum-Century
Beiträge: 219
Registriert: Sa 12. Jul 2008, 08:02

Beitrag von sommerfee »

KOMA hat geschrieben:Da das Paket außerdem eine vollkommen ungeklärte Lizenz hat
Ok, ohne GPL oder LPPL (oder vergleichbares) hat sich dann meine Idee, ltablex als "longtablex" und "longtablex*" innerhalb ltcaption anzubieten, sowieso als nicht haltbar erwiesen.

Liebe Grüße,
Axel

Antworten