summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2024-10-30 20:03:00 +0000
committerKarl Berry <karl@freefriends.org>2024-10-30 20:03:00 +0000
commit04f417589d13c65b7f5fd037b9d97953e84e4cd1 (patch)
treef2cdb79f98393cf12a810e10d6df68afce03d4af
parent319117d4c20e8baebd167c82a099227419485479 (diff)
xltabular (30oct24)
git-svn-id: svn://tug.org/texlive/trunk@72712 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/xltabular/Changes1
-rw-r--r--Master/texmf-dist/doc/latex/xltabular/xltabular-doc.pdfbin71248 -> 77174 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xltabular/xltabular-doc.tex119
-rw-r--r--Master/texmf-dist/tex/latex/xltabular/xltabular.sty22
4 files changed, 133 insertions, 9 deletions
diff --git a/Master/texmf-dist/doc/latex/xltabular/Changes b/Master/texmf-dist/doc/latex/xltabular/Changes
index 4863998012b..7dc4c39726d 100644
--- a/Master/texmf-dist/doc/latex/xltabular/Changes
+++ b/Master/texmf-dist/doc/latex/xltabular/Changes
@@ -1,3 +1,4 @@
+2.0g 2024/10/28 - prevent problematic behavior of longtable at page breaks
2.0e 2020/11/04 - insert a \par at the beginning of xltabular
2.0c 2020/03/20 - restore of original longtable more robust
2.0a 2018/12/16 - better hyperref support; example files
diff --git a/Master/texmf-dist/doc/latex/xltabular/xltabular-doc.pdf b/Master/texmf-dist/doc/latex/xltabular/xltabular-doc.pdf
index 31763a2549e..395af9e19da 100644
--- a/Master/texmf-dist/doc/latex/xltabular/xltabular-doc.pdf
+++ b/Master/texmf-dist/doc/latex/xltabular/xltabular-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xltabular/xltabular-doc.tex b/Master/texmf-dist/doc/latex/xltabular/xltabular-doc.tex
index 2ad96957975..f78ffc8e2ca 100644
--- a/Master/texmf-dist/doc/latex/xltabular/xltabular-doc.tex
+++ b/Master/texmf-dist/doc/latex/xltabular/xltabular-doc.tex
@@ -1,4 +1,4 @@
-%% $Id: xltabular-doc.tex 598 2017-09-30 19:52:25Z herbert $
+%% $Id: xltabular-doc.tex 635 2017-10-24 18:22:59Z herbert $
%
\listfiles\setcounter{errorcontextlines}{100}
\documentclass[paper=a4,fontsize=11pt,DIV=13,parskip=half-,
@@ -35,6 +35,9 @@
%\nolig{oe}{o|e}
\usepackage{xltabular}
+
+%\specialLTpagebreak
+
\usepackage{fancyvrb}
\usepackage{blindtext}
\usepackage{dtk-logos} % for Wikipedia W
@@ -317,10 +320,122 @@ Klassen-Optionen\\
\end{xltabular}
+\section{Pagebreaks}
+
+\texttt{xltabular} is based on \texttt{longtable} which itself has sometimes a problem with the pagebreak.
+It may be possible, that you'll get a break between a section header and the following \texttt{longtable}/\texttt{xltabular}.
+Here is an example with \texttt{xltabular}:
+
+\section{Title above the tabular}
+
+\begin{xltabular}{\linewidth}{@{} >{\ttfamily}l >{\RaggedRight}X @{}}
+\caption{File endings (only for a demonstration \ldots)}\\
+\hline
+.ext & Beschreibung\\\hline
+\endfirsthead
+\multicolumn{2}{@{}l}{\ldots\ \small Fortsetzung}\\\hline
+.ext & Beschreibung\\\hline
+\endhead
+\hline
+\multicolumn{2}{r@{}}{\small Fortsetzung\ldots}\\
+\endfoot
+\hline
+\endlastfoot
+ aux & (auxiliary) Hilfsdatei, enthält Querverweise usw. \\
+ bbl & (bibliography) Hilfsdatei, enthält die Einträge für die Literatur\\
+ bib & (bibtex) enthält die Literaturdaten\\
+ blg & (bibliography log) enthält die Ausgaben eines Bib\TeX-Laufs\\
+ cfg & (config) Konfigurationsdatei\\
+ clo & (class options) Definitionen für die Dokumentenklasse und die entsprechenden
+ Klassen-Optionen\\
+ aux & (auxiliary) Hilfsdatei, enthält Querverweise usw. \\
+ bbl & (bibliography) Hilfsdatei, enthält die Einträge für die Literatur\\
+ bib & (bibtex) enthält die Literaturdaten\\
+ blg & (bibliography log) enthält die Ausgaben eines Bib\TeX-Laufs\\
+ cfg & (config) Konfigurationsdatei\\
+ clo & (class options) Definitionen für die Dokumentenklasse und die entsprechenden
+ Klassen-Optionen\\
+ aux & (auxiliary) Hilfsdatei, enthält Querverweise usw. \\
+ bbl & (bibliography) Hilfsdatei, enthält die Einträge für die Literatur\\
+ bib & (bibtex) enthält die Literaturdaten\\
+ blg & (bibliography log) enthält die Ausgaben eines Bib\TeX-Laufs\\
+ clo & (class options) Definitionen für die Dokumentenklasse und die entsprechenden
+ Klassen-Optionen\\
+% aux & (auxiliary) Hilfsdatei, enthält Querverweise usw. \\
+% bbl & (bibliography) Hilfsdatei, enthält die Einträge für die Literatur\\
+% bib & (bibtex) enthält die Literaturdaten\\
+ blg & (bibliography log) enthält die Ausgaben eines Bib\TeX-Laufs\\
+ cfg & (config) Konfigurationsdatei\\
+ clo & (class options) Definitionen für die Dokumentenklasse und die entsprechenden
+ Klassen-Optionen\\
+\end{xltabular}
+
+
+Package \texttt{xltabular} defines two macros which can be used to modify the behaviour of
+\texttt{longtable}/ \texttt{xltabular} for pagebreaks.
+
+\begin{verbatim}
+\newcommand*\normalLTpagebreak{...}
+\newcommand*\specialLTpagebreak{...}
+\end{verbatim}
+
+With \verb|\specialLTpagebreak| one can get another beaviour which prevents such unwanted pagebreak.
+With \verb|\normalLTpagebreak| you can set it back to the default behaviour. Here comes an example
+with the special behaviour by using \verb|\specialLTpagebreak|: \specialLTpagebreak
+
+
+
+\section{Title above the tabular}
+
+\begin{xltabular}{\linewidth}{@{} >{\ttfamily}l >{\RaggedRight}X @{}}
+\caption{File endings (only for a demonstration \ldots)}\\
+\hline
+.ext & Beschreibung\\\hline
+\endfirsthead
+\multicolumn{2}{@{}l}{\ldots\ \small Fortsetzung}\\\hline
+.ext & Beschreibung\\\hline
+\endhead
+\hline
+\multicolumn{2}{r@{}}{\small Fortsetzung\ldots}\\
+\endfoot
+\hline
+\endlastfoot
+ aux & (auxiliary) Hilfsdatei, enthält Querverweise usw. \\
+ bbl & (bibliography) Hilfsdatei, enthält die Einträge für die Literatur\\
+ bib & (bibtex) enthält die Literaturdaten\\
+ blg & (bibliography log) enthält die Ausgaben eines Bib\TeX-Laufs\\
+ cfg & (config) Konfigurationsdatei\\
+ clo & (class options) Definitionen für die Dokumentenklasse und die entsprechenden
+ Klassen-Optionen\\
+ aux & (auxiliary) Hilfsdatei, enthält Querverweise usw. \\
+ bbl & (bibliography) Hilfsdatei, enthält die Einträge für die Literatur\\
+ bib & (bibtex) enthält die Literaturdaten\\
+ blg & (bibliography log) enthält die Ausgaben eines Bib\TeX-Laufs\\
+ cfg & (config) Konfigurationsdatei\\
+ clo & (class options) Definitionen für die Dokumentenklasse und die entsprechenden
+ Klassen-Optionen\\
+ aux & (auxiliary) Hilfsdatei, enthält Querverweise usw. \\
+ bbl & (bibliography) Hilfsdatei, enthält die Einträge für die Literatur\\
+ bib & (bibtex) enthält die Literaturdaten\\
+ blg & (bibliography log) enthält die Ausgaben eines Bib\TeX-Laufs\\
+% cfg & (config) Konfigurationsdatei\\
+% clo & (class options) Definitionen für die Dokumentenklasse und die entsprechenden
+% Klassen-Optionen\\
+% aux & (auxiliary) Hilfsdatei, enthält Querverweise usw. \\
+% bbl & (bibliography) Hilfsdatei, enthält die Einträge für die Literatur\\
+% bib & (bibtex) enthält die Literaturdaten\\
+ blg & (bibliography log) enthält die Ausgaben eines Bib\TeX-Laufs\\
+ cfg & (config) Konfigurationsdatei\\
+ clo & (class options) Definitionen für die Dokumentenklasse und die entsprechenden
+ Klassen-Optionen\\
+\end{xltabular}
+
+
+
+\pagebreak
\nocite{*}
\printbibliography
\end{document}
-
diff --git a/Master/texmf-dist/tex/latex/xltabular/xltabular.sty b/Master/texmf-dist/tex/latex/xltabular/xltabular.sty
index 6752047c5e5..6a6fc8b764f 100644
--- a/Master/texmf-dist/tex/latex/xltabular/xltabular.sty
+++ b/Master/texmf-dist/tex/latex/xltabular/xltabular.sty
@@ -3,11 +3,12 @@
%% License from CTAN archives in directory macros/latex/base/lppl.txt.
%% Either version 1.3 or, at your option, any later version.
%%
-% Copyright 2018-2020 Herbert Voss <hvoss@tug.org>
+% Copyright 2018-2024 Herbert Voss <hvoss@tug.org>
% Rolf Niepraschk <Rolf.Niepraschk@gmx.de>
%%
-\ProvidesPackage{xltabular}[2020/11/04 v0.2e `xltabular' package (hv,RN)]
+\ProvidesPackage{xltabular}[2024/10/28 v2.0g `xltabular' package (hv,RN)]
\RequirePackage{tabularx}
+\RequirePackage{etoolbox}
\let\XLT@i@tabularx=\tabularx
\let\XLT@i@endtabularx=\endtabularx
\let\XLT@i@TX@endtabularx=\TX@endtabularx
@@ -15,9 +16,16 @@
\RequirePackage{ltablex}
\keepXColumns% xltabular behaves like tabularx
%
+\newif\ifXLT@normalPB \XLT@normalPBtrue
+\newcommand*\normalLTpagebreak{\global\XLT@normalPBtrue}
+\newcommand*\specialLTpagebreak{\global\XLT@normalPBfalse}
+%
\let\XLT@ii@tabularx=\tabularx
\let\XLT@ii@TX@endtabularx=\TX@endtabularx
\let\XLT@longtable=\longtable
+% prevents problematic behavior of longtable at page breaks (\XLT@normalPBfalse)
+\patchcmd{\LT@start}{\vfil \break}{\ifXLT@normalPB \vfil \break \fi}{}{}
+\patchcmd{\LT@start}{\penalty \z@}{\ifXLT@normalPB \penalty \z@ \fi}{}{}
\let\XLT@LT@start=\LT@start
\let\XLT@LT@array=\LT@array
\@ifundefined{scr@LT@array}{%
@@ -32,7 +40,7 @@
{\let\TX@endtabularx=\XLT@i@TX@endtabularx\XLT@i@tabularx}
{\XLT@i@endtabularx}
%
-% define a new tabularx like the one from "ltablex"
+% define a new tabularx like the one from "ltablex"
%
\newenvironment{xltabular}[1][x]%
{%
@@ -76,7 +84,7 @@
\hyper@makecurrent{\LTcaptype}%
\global\let\Hy@LT@currentHref\@currentHref
\fi
- % continue with the original definition of \LT@caption
+ % continue with the original definition of \LT@caption
\@ifnextchar[{\egroup\LT@c@ption\@firstofone}\LT@capti@n
}
@@ -113,10 +121,10 @@
\fi
\def\LT@array{%
% make the call of \refstepcounter inside of \XLT@LT@array ineffective
- \renewcommand*\refstepcounter[2][]{%
+% \renewcommand*\refstepcounter[2][]{%
% make next calls effective again
- \let\refstepcounter=\XLT@refstepcounter
- }%
+% \let\refstepcounter=\XLT@refstepcounter
+% }%
\XLT@LT@array
}%
}