diff options
author | Karl Berry <karl@freefriends.org> | 2024-10-30 20:03:00 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2024-10-30 20:03:00 +0000 |
commit | 04f417589d13c65b7f5fd037b9d97953e84e4cd1 (patch) | |
tree | f2cdb79f98393cf12a810e10d6df68afce03d4af | |
parent | 319117d4c20e8baebd167c82a099227419485479 (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/Changes | 1 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/xltabular/xltabular-doc.pdf | bin | 71248 -> 77174 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/xltabular/xltabular-doc.tex | 119 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/xltabular/xltabular.sty | 22 |
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 Binary files differindex 31763a2549e..395af9e19da 100644 --- a/Master/texmf-dist/doc/latex/xltabular/xltabular-doc.pdf +++ b/Master/texmf-dist/doc/latex/xltabular/xltabular-doc.pdf 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 }% } |