diff options
| author | milde <milde@929543f6-e4f2-0310-98a6-ba3bd3dd1d04> | 2020-11-25 23:06:44 +0000 |
|---|---|---|
| committer | milde <milde@929543f6-e4f2-0310-98a6-ba3bd3dd1d04> | 2020-11-25 23:06:44 +0000 |
| commit | 942f798c4a444f3c0f69947914fa450e1cabc84b (patch) | |
| tree | bfd14a946e49cd80ec68d9781ad267970dc12224 /docutils/test/functional | |
| parent | e917fa1d35fe0a9c8c03d68b1d9b062152d3bd68 (diff) | |
| download | docutils-942f798c4a444f3c0f69947914fa450e1cabc84b.tar.gz | |
Apply patch #175 "Fix alignment of nested tables".
Thanks to John Thorvald Wodder II for the patch.
Additional fixes to table alignment.
Expand LaTeX writer test for nested tables.
git-svn-id: https://svn.code.sf.net/p/docutils/code/trunk@8577 929543f6-e4f2-0310-98a6-ba3bd3dd1d04
Diffstat (limited to 'docutils/test/functional')
10 files changed, 270 insertions, 117 deletions
diff --git a/docutils/test/functional/expected/latex_cornercases.tex b/docutils/test/functional/expected/latex_cornercases.tex index ce61abbfb..bc9ef36af 100644 --- a/docutils/test/functional/expected/latex_cornercases.tex +++ b/docutils/test/functional/expected/latex_cornercases.tex @@ -4,6 +4,7 @@ \usepackage{ifthen} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} +\usepackage{booktabs} \usepackage{graphicx} \usepackage{multirow} \setcounter{secnumdepth}{0} @@ -125,8 +126,8 @@ Therefore, visit\_entry() is only called for the remaining cells and the LaTeX writer needs bookkeeping to write out the required number of extra '\&'s. -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.075\DUtablewidth}|p{0.133\DUtablewidth}|p{0.133\DUtablewidth}|p{0.086\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.075\DUtablewidth}|p{0.133\DUtablewidth}|p{0.133\DUtablewidth}|p{0.086\DUtablewidth}|} \hline 11 @@ -167,8 +168,8 @@ LaTeX writer needs bookkeeping to write out the required number of extra \hline \end{longtable*} -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.098\DUtablewidth}|p{0.098\DUtablewidth}|p{0.063\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.098\DUtablewidth}|p{0.098\DUtablewidth}|p{0.063\DUtablewidth}|} \hline 11 @@ -192,8 +193,8 @@ LaTeX writer needs bookkeeping to write out the required number of extra \hline \end{longtable*} -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.098\DUtablewidth}|p{0.063\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.098\DUtablewidth}|p{0.063\DUtablewidth}|} \hline 11 @@ -213,8 +214,8 @@ LaTeX writer needs bookkeeping to write out the required number of extra \hline \end{longtable*} -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.063\DUtablewidth}|p{0.110\DUtablewidth}|p{0.063\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.063\DUtablewidth}|p{0.110\DUtablewidth}|p{0.063\DUtablewidth}|} \hline 11 @@ -241,8 +242,8 @@ LaTeX writer needs bookkeeping to write out the required number of extra \hline \end{longtable*} -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.063\DUtablewidth}|p{0.110\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.063\DUtablewidth}|p{0.110\DUtablewidth}|} \hline 11 @@ -262,8 +263,8 @@ LaTeX writer needs bookkeeping to write out the required number of extra \hline \end{longtable*} -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.063\DUtablewidth}|p{0.110\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.063\DUtablewidth}|p{0.110\DUtablewidth}|} \hline 11 @@ -283,8 +284,8 @@ LaTeX writer needs bookkeeping to write out the required number of extra \hline \end{longtable*} -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.063\DUtablewidth}|p{0.156\DUtablewidth}|p{0.110\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.063\DUtablewidth}|p{0.156\DUtablewidth}|p{0.110\DUtablewidth}|} \hline 11 @@ -300,8 +301,8 @@ LaTeX writer needs bookkeeping to write out the required number of extra \hline \end{longtable*} -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.098\DUtablewidth}|p{0.063\DUtablewidth}|p{0.110\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.098\DUtablewidth}|p{0.063\DUtablewidth}|p{0.110\DUtablewidth}|} \hline \multirow{2}{0.10\DUtablewidth}{% 1/2 3 @@ -317,8 +318,8 @@ LaTeX writer needs bookkeeping to write out the required number of extra \hline \end{longtable*} -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.098\DUtablewidth}|p{0.063\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.098\DUtablewidth}|p{0.063\DUtablewidth}|} \hline \multirow{2}{0.10\DUtablewidth}{% 1/2 3 @@ -346,8 +347,8 @@ LaTeX writer needs bookkeeping to write out the required number of extra TODO: Set alignment of nested tables without creating too much vertical space. -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.493\DUtablewidth}|p{0.214\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.493\DUtablewidth}|p{0.214\DUtablewidth}|} \hline Lorem ipsum dolor sit amet, consectetur @@ -356,8 +357,8 @@ adipisicing elit \\ \hline -\setlength{\DUtablewidth}{\linewidth} -\begin{tabular}[r]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{tabular}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \hline 1 @@ -371,8 +372,9 @@ cell 1, 2 \\ \hline -\setlength{\DUtablewidth}{\linewidth} -\begin{tabular}[r]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} +\noindent\makebox[\linewidth][l]{% +\setlength{\DUtablewidth}{\linewidth}% +\begin{tabular}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \hline 1 @@ -381,6 +383,58 @@ cell 1, 2 \\ \hline \end{tabular} +} + & +cell 1, 2 + \\ +\hline + +\noindent\makebox[\linewidth][c]{% +\setlength{\DUtablewidth}{\linewidth}% +\begin{tabular}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} +\hline + +1 + & +2 + \\ +\hline +\end{tabular} +} + & +cell 1, 2 + \\ +\hline + +\noindent\makebox[\linewidth][r]{% +\setlength{\DUtablewidth}{\linewidth}% +\begin{tabular}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} +\hline + +1 + & +2 + \\ +\hline +\end{tabular} +} + & +cell 1, 2 + \\ +\hline + +\noindent\makebox[\linewidth][r]{% +\setlength{\DUtablewidth}{\linewidth}% +\begin{tabular}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} +\hline + +1 + & +2 + \\ +\hline +\end{tabular} +} \begin{description} \item[{definition:}] \leavevmode @@ -397,4 +451,56 @@ cell 3, 2 \hline \end{longtable*} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{p{0.493\DUtablewidth}p{0.214\DUtablewidth}} +\toprule + +Lorem ipsum dolor sit amet, consectetur + & +adipisicing elit + \\ + +\noindent\makebox[\linewidth][r]{% +\setlength{\DUtablewidth}{\linewidth}% +\begin{tabular}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} +\hline + +1 + & +2 + \\ +\hline +\end{tabular} +} + & +cell 1, 2 + \\ + +\noindent\makebox[\linewidth][r]{% +\setlength{\DUtablewidth}{\linewidth}% +\begin{tabular}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} +\hline + +1 + & +2 + \\ +\hline +\end{tabular} +} + +\begin{description} +\item[{definition:}] \leavevmode +list + +\end{description} + & +cell 2, 2 + \\ + & +cell 3, 2 + \\ +\bottomrule +\end{longtable*} + \end{document} diff --git a/docutils/test/functional/expected/latex_literal_block.tex b/docutils/test/functional/expected/latex_literal_block.tex index 426f02100..f93dabfbc 100644 --- a/docutils/test/functional/expected/latex_literal_block.tex +++ b/docutils/test/functional/expected/latex_literal_block.tex @@ -71,8 +71,8 @@ $\textbackslash{}sin^2(x)$ and $\textbackslash{}cos^2(x)$ equals one: A literal block in a table: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.063\DUtablewidth}|p{0.145\DUtablewidth}|p{0.063\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.063\DUtablewidth}|p{0.145\DUtablewidth}|p{0.063\DUtablewidth}|} \hline test @@ -90,7 +90,7 @@ test A literal block in a table with auto-width columns: -\begin{longtable*}[c]{|l|l|l|} +\begin{longtable*}{|l|l|l|} \hline test & \ttfamily\raggedright diff --git a/docutils/test/functional/expected/latex_literal_block_fancyvrb.tex b/docutils/test/functional/expected/latex_literal_block_fancyvrb.tex index ba2c6faae..a334e03d0 100644 --- a/docutils/test/functional/expected/latex_literal_block_fancyvrb.tex +++ b/docutils/test/functional/expected/latex_literal_block_fancyvrb.tex @@ -71,8 +71,8 @@ $\sin^2(x)$ and $\cos^2(x)$ equals one: A literal block in a table: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.063\DUtablewidth}|p{0.145\DUtablewidth}|p{0.063\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.063\DUtablewidth}|p{0.145\DUtablewidth}|p{0.063\DUtablewidth}|} \hline test @@ -90,7 +90,7 @@ test A literal block in a table with auto-width columns: -\begin{longtable*}[c]{|l|l|l|} +\begin{longtable*}{|l|l|l|} \hline test & \ttfamily\raggedright diff --git a/docutils/test/functional/expected/latex_literal_block_listings.tex b/docutils/test/functional/expected/latex_literal_block_listings.tex index dac7476a4..61bf6e54d 100644 --- a/docutils/test/functional/expected/latex_literal_block_listings.tex +++ b/docutils/test/functional/expected/latex_literal_block_listings.tex @@ -73,8 +73,8 @@ $\sin^2(x)$ and $\cos^2(x)$ equals one: A literal block in a table: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.063\DUtablewidth}|p{0.145\DUtablewidth}|p{0.063\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.063\DUtablewidth}|p{0.145\DUtablewidth}|p{0.063\DUtablewidth}|} \hline test @@ -93,7 +93,7 @@ test A literal block in a table with auto-width columns: -\begin{longtable*}[c]{|l|l|l|} +\begin{longtable*}{|l|l|l|} \hline test & \lstset{xleftmargin=0pt} diff --git a/docutils/test/functional/expected/latex_literal_block_verbatim.tex b/docutils/test/functional/expected/latex_literal_block_verbatim.tex index c40501575..823651730 100644 --- a/docutils/test/functional/expected/latex_literal_block_verbatim.tex +++ b/docutils/test/functional/expected/latex_literal_block_verbatim.tex @@ -70,8 +70,8 @@ $\sin^2(x)$ and $\cos^2(x)$ equals one: A literal block in a table: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.063\DUtablewidth}|p{0.145\DUtablewidth}|p{0.063\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.063\DUtablewidth}|p{0.145\DUtablewidth}|p{0.063\DUtablewidth}|} \hline test @@ -89,7 +89,7 @@ test A literal block in a table with auto-width columns: -\begin{longtable*}[c]{|l|l|l|} +\begin{longtable*}{|l|l|l|} \hline test & \ttfamily\raggedright diff --git a/docutils/test/functional/expected/latex_literal_block_verbatimtab.tex b/docutils/test/functional/expected/latex_literal_block_verbatimtab.tex index cfbc8161d..2da4fde8b 100644 --- a/docutils/test/functional/expected/latex_literal_block_verbatimtab.tex +++ b/docutils/test/functional/expected/latex_literal_block_verbatimtab.tex @@ -71,8 +71,8 @@ $\sin^2(x)$ and $\cos^2(x)$ equals one: A literal block in a table: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.063\DUtablewidth}|p{0.145\DUtablewidth}|p{0.063\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.063\DUtablewidth}|p{0.145\DUtablewidth}|p{0.063\DUtablewidth}|} \hline test @@ -90,7 +90,7 @@ test A literal block in a table with auto-width columns: -\begin{longtable*}[c]{|l|l|l|} +\begin{longtable*}{|l|l|l|} \hline test & \ttfamily\raggedright diff --git a/docutils/test/functional/expected/latex_memoir.tex b/docutils/test/functional/expected/latex_memoir.tex index ce552b44d..f8cc79366 100644 --- a/docutils/test/functional/expected/latex_memoir.tex +++ b/docutils/test/functional/expected/latex_memoir.tex @@ -884,8 +884,8 @@ layout. \noindent\makebox[\linewidth][c]{\includegraphics[width=258bp]{../../../docs/user/rst/images/title.png}} \caption{Plaintext markup syntax and parser system.} \begin{DUlegend} -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.156\DUtablewidth}|p{0.563\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.156\DUtablewidth}|p{0.563\DUtablewidth}|} \hline re @@ -974,7 +974,7 @@ upon the style sheet and the browser or rendering software used. Tables may be given titles and additional arguments with the \emph{table} directive: -\setlength{\DUtablewidth}{\linewidth} +\setlength{\DUtablewidth}{\linewidth}% \begin{longtable}[l]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \caption{left-aligned table}\\ \hline @@ -1011,7 +1011,7 @@ False \hline \end{longtable} -\setlength{\DUtablewidth}{\linewidth} +\setlength{\DUtablewidth}{\linewidth}% \begin{longtable}[c]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \caption{center-aligned table}\\ \hline @@ -1048,7 +1048,7 @@ False \hline \end{longtable} -\setlength{\DUtablewidth}{\linewidth} +\setlength{\DUtablewidth}{\linewidth}% \begin{longtable}[r]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \caption{right-aligned table}\\ \hline @@ -1089,7 +1089,7 @@ With the \textquotedbl{}widths\textquotedbl{} argument \textquotedbl{}auto\textq column widths are determined by the backend (if supported by the writer/backend). -\begin{longtable*}[c]{|l|l|l|} +\begin{longtable*}{|l|l|l|} \hline \textbf{A} & \textbf{B} & \textbf{A or B} \\ \hline @@ -1329,8 +1329,8 @@ Compound 5, block 3 (a paragraph). Compound 7, tests the inclusion of various block-level elements in one logical paragraph. First a table, -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.249\DUtablewidth}|p{0.249\DUtablewidth}|p{0.249\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.249\DUtablewidth}|p{0.249\DUtablewidth}|p{0.249\DUtablewidth}|} \hline Left cell, first @@ -1538,8 +1538,8 @@ paragraph 2 This table has a cell spanning two columns: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|p{0.086\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|p{0.086\DUtablewidth}|} \hline \multicolumn{2}{|p{0.15\DUtablewidth}|}{\textbf{% Inputs @@ -1616,8 +1616,8 @@ True Here's a table with cells spanning several rows: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.296\DUtablewidth}|p{0.156\DUtablewidth}|p{0.226\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.296\DUtablewidth}|p{0.156\DUtablewidth}|p{0.226\DUtablewidth}|} \hline \textbf{% Header row, column 1 @@ -1676,8 +1676,8 @@ body row 3 Here's a list table exercising all features: \begin{DUclass}{test} -\setlength{\DUtablewidth}{40em} -\begin{longtable}[c]{|p{0.133\DUtablewidth}|p{0.249\DUtablewidth}|p{0.365\DUtablewidth}|} +\setlength{\DUtablewidth}{40em}% +\begin{longtable}{|p{0.133\DUtablewidth}|p{0.249\DUtablewidth}|p{0.365\DUtablewidth}|} \caption{list table with integral header}\\ \hline \textbf{% @@ -1840,8 +1840,8 @@ physical system changes in time. \begin{description} \item[{Math-Accents:}] \leavevmode -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{p{0.315\DUtablewidth}p{0.315\DUtablewidth}p{0.315\DUtablewidth}} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{p{0.315\DUtablewidth}p{0.315\DUtablewidth}p{0.315\DUtablewidth}} $\acute{a}$ \texttt{\textbackslash{}acute\{a\}} & @@ -2072,8 +2072,8 @@ writer for image, table, and line block elements. A table with multi-paragraph multicolumn cells: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.133\DUtablewidth}|p{0.179\DUtablewidth}|p{0.179\DUtablewidth}|p{0.110\DUtablewidth}|p{0.121\DUtablewidth}|p{0.145\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.133\DUtablewidth}|p{0.179\DUtablewidth}|p{0.179\DUtablewidth}|p{0.110\DUtablewidth}|p{0.121\DUtablewidth}|p{0.145\DUtablewidth}|} \hline test @@ -2132,7 +2132,7 @@ limitation (see \url{https://sourceforge.net/p/docutils/bugs/225/}). A table with multirow header and column-widths set by LaTeX: -\begin{longtable*}[c]{|l|l|} +\begin{longtable*}{|l|l|} \hline \multirow{2}{*}{\textbf{XXX}} & \textbf{Variable Summary} \\ \cline{2-2} @@ -2155,7 +2155,7 @@ A table with multirow header and column-widths set by LaTeX: In a table with column-widths set by LaTeX, each cell has just one line. Paragraphs are merged (a warning is given). -\begin{longtable*}[c]{|l|l|} +\begin{longtable*}{|l|l|} \hline 11 & first paragraph second paragraph @@ -2220,8 +2220,8 @@ width as the third line. Punctuation and footnote symbols -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.028\DUtablewidth}|p{0.424\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.028\DUtablewidth}|p{0.424\DUtablewidth}|} \hline – @@ -2329,8 +2329,8 @@ left-right double arrow The \DUroletitlereference{Latin-1 extended} Unicode block -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.051\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.051\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|} \hline % @@ -2673,8 +2673,8 @@ In LaTeX, we must set an explicit anchor (\texttt{\textbackslash{}phantomsection \phantomsection\label{hypertarget-in-plain-text}hypertarget in plain text or in a figure but not in a longtable or caption: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable}[c]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \caption{Table with % \label{hypertarget-in-table-title}hypertarget in table title.}\\ \hline diff --git a/docutils/test/functional/expected/standalone_rst_latex.tex b/docutils/test/functional/expected/standalone_rst_latex.tex index 1e15381e3..3b4b9b159 100644 --- a/docutils/test/functional/expected/standalone_rst_latex.tex +++ b/docutils/test/functional/expected/standalone_rst_latex.tex @@ -888,8 +888,8 @@ layout. \noindent\makebox[\linewidth][c]{\includegraphics[width=258bp]{../../../docs/user/rst/images/title.png}} \caption{Plaintext markup syntax and parser system.} \begin{DUlegend} -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.156\DUtablewidth}|p{0.563\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.156\DUtablewidth}|p{0.563\DUtablewidth}|} \hline re @@ -978,7 +978,7 @@ upon the style sheet and the browser or rendering software used. Tables may be given titles and additional arguments with the \emph{table} directive: -\setlength{\DUtablewidth}{\linewidth} +\setlength{\DUtablewidth}{\linewidth}% \begin{longtable}[l]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \caption{left-aligned table}\\ \hline @@ -1015,7 +1015,7 @@ False \hline \end{longtable} -\setlength{\DUtablewidth}{\linewidth} +\setlength{\DUtablewidth}{\linewidth}% \begin{longtable}[c]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \caption{center-aligned table}\\ \hline @@ -1052,7 +1052,7 @@ False \hline \end{longtable} -\setlength{\DUtablewidth}{\linewidth} +\setlength{\DUtablewidth}{\linewidth}% \begin{longtable}[r]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \caption{right-aligned table}\\ \hline @@ -1093,7 +1093,7 @@ With the “widths” argument “auto” (or “class” value “colwidths-aut column widths are determined by the backend (if supported by the writer/backend). -\begin{longtable*}[c]{|l|l|l|} +\begin{longtable*}{|l|l|l|} \hline \textbf{A} & \textbf{B} & \textbf{A or B} \\ \hline @@ -1333,8 +1333,8 @@ Compound 5, block 3 (a paragraph). Compound 7, tests the inclusion of various block-level elements in one logical paragraph. First a table, -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.249\DUtablewidth}|p{0.249\DUtablewidth}|p{0.249\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.249\DUtablewidth}|p{0.249\DUtablewidth}|p{0.249\DUtablewidth}|} \hline Left cell, first @@ -1542,8 +1542,8 @@ paragraph 2 This table has a cell spanning two columns: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|p{0.086\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|p{0.086\DUtablewidth}|} \hline \multicolumn{2}{|p{0.15\DUtablewidth}|}{\textbf{% Inputs @@ -1620,8 +1620,8 @@ True Here’s a table with cells spanning several rows: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.296\DUtablewidth}|p{0.156\DUtablewidth}|p{0.226\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.296\DUtablewidth}|p{0.156\DUtablewidth}|p{0.226\DUtablewidth}|} \hline \textbf{% Header row, column 1 @@ -1680,8 +1680,8 @@ body row 3 Here’s a list table exercising all features: \begin{DUclass}{test} -\setlength{\DUtablewidth}{40em} -\begin{longtable}[c]{|p{0.133\DUtablewidth}|p{0.249\DUtablewidth}|p{0.365\DUtablewidth}|} +\setlength{\DUtablewidth}{40em}% +\begin{longtable}{|p{0.133\DUtablewidth}|p{0.249\DUtablewidth}|p{0.365\DUtablewidth}|} \caption{list table with integral header}\\ \hline \textbf{% @@ -1844,8 +1844,8 @@ physical system changes in time. \begin{description} \item[{Math-Accents:}] \leavevmode -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{p{0.315\DUtablewidth}p{0.315\DUtablewidth}p{0.315\DUtablewidth}} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{p{0.315\DUtablewidth}p{0.315\DUtablewidth}p{0.315\DUtablewidth}} $\acute{a}$ \texttt{\textbackslash{}acute\{a\}} & @@ -2076,8 +2076,8 @@ writer for image, table, and line block elements. A table with multi-paragraph multicolumn cells: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.133\DUtablewidth}|p{0.179\DUtablewidth}|p{0.179\DUtablewidth}|p{0.110\DUtablewidth}|p{0.121\DUtablewidth}|p{0.145\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.133\DUtablewidth}|p{0.179\DUtablewidth}|p{0.179\DUtablewidth}|p{0.110\DUtablewidth}|p{0.121\DUtablewidth}|p{0.145\DUtablewidth}|} \hline test @@ -2136,7 +2136,7 @@ limitation (see \url{https://sourceforge.net/p/docutils/bugs/225/}). A table with multirow header and column-widths set by LaTeX: -\begin{longtable*}[c]{|l|l|} +\begin{longtable*}{|l|l|} \hline \multirow{2}{*}{\textbf{XXX}} & \textbf{Variable Summary} \\ \cline{2-2} @@ -2159,7 +2159,7 @@ A table with multirow header and column-widths set by LaTeX: In a table with column-widths set by LaTeX, each cell has just one line. Paragraphs are merged (a warning is given). -\begin{longtable*}[c]{|l|l|} +\begin{longtable*}{|l|l|} \hline 11 & first paragraph second paragraph @@ -2224,8 +2224,8 @@ width as the third line. Punctuation and footnote symbols -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.028\DUtablewidth}|p{0.424\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.028\DUtablewidth}|p{0.424\DUtablewidth}|} \hline – @@ -2333,8 +2333,8 @@ left-right double arrow The \DUroletitlereference{Latin-1 extended} Unicode block -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.051\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.051\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|} \hline % @@ -2677,8 +2677,8 @@ In LaTeX, we must set an explicit anchor (\texttt{\textbackslash{}phantomsection \phantomsection\label{hypertarget-in-plain-text}hypertarget in plain text or in a figure but not in a longtable or caption: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable}[c]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \caption{Table with % \label{hypertarget-in-table-title}hypertarget in table title.}\\ \hline diff --git a/docutils/test/functional/expected/standalone_rst_xetex.tex b/docutils/test/functional/expected/standalone_rst_xetex.tex index fcb16d637..260576c58 100644 --- a/docutils/test/functional/expected/standalone_rst_xetex.tex +++ b/docutils/test/functional/expected/standalone_rst_xetex.tex @@ -749,8 +749,8 @@ layout. \noindent\makebox[\linewidth][c]{\includegraphics[width=258bp]{../../../docs/user/rst/images/title.png}} \caption{Plaintext markup syntax and parser system.} \begin{DUlegend} -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.156\DUtablewidth}|p{0.563\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.156\DUtablewidth}|p{0.563\DUtablewidth}|} \hline re @@ -839,7 +839,7 @@ upon the style sheet and the browser or rendering software used. Tables may be given titles and additional arguments with the \emph{table} directive: -\setlength{\DUtablewidth}{\linewidth} +\setlength{\DUtablewidth}{\linewidth}% \begin{longtable}[l]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \caption{left-aligned table}\\ \hline @@ -876,7 +876,7 @@ False \hline \end{longtable} -\setlength{\DUtablewidth}{\linewidth} +\setlength{\DUtablewidth}{\linewidth}% \begin{longtable}[c]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \caption{center-aligned table}\\ \hline @@ -913,7 +913,7 @@ False \hline \end{longtable} -\setlength{\DUtablewidth}{\linewidth} +\setlength{\DUtablewidth}{\linewidth}% \begin{longtable}[r]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \caption{right-aligned table}\\ \hline @@ -954,7 +954,7 @@ With the “widths” argument “auto” (or “class” value “colwidths-aut column widths are determined by the backend (if supported by the writer/backend). -\begin{longtable*}[c]{|l|l|l|} +\begin{longtable*}{|l|l|l|} \hline \textbf{A} & \textbf{B} & \textbf{A or B} \\ \hline @@ -1218,8 +1218,8 @@ Compound 5, block 3 (a paragraph). Compound 7, tests the inclusion of various block-level elements in one logical paragraph. First a table, -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.249\DUtablewidth}|p{0.249\DUtablewidth}|p{0.249\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.249\DUtablewidth}|p{0.249\DUtablewidth}|p{0.249\DUtablewidth}|} \hline Left cell, first @@ -1428,8 +1428,8 @@ paragraph 2 This table has a cell spanning two columns: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|p{0.086\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|p{0.086\DUtablewidth}|} \hline \multicolumn{2}{|p{0.15\DUtablewidth}|}{\textbf{% Inputs @@ -1506,8 +1506,8 @@ True Here’s a table with cells spanning several rows: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.296\DUtablewidth}|p{0.156\DUtablewidth}|p{0.226\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.296\DUtablewidth}|p{0.156\DUtablewidth}|p{0.226\DUtablewidth}|} \hline \textbf{% Header row, column 1 @@ -1566,8 +1566,8 @@ body row 3 Here’s a list table exercising all features: \begin{DUclass}{test} -\setlength{\DUtablewidth}{40em} -\begin{longtable}[c]{|p{0.133\DUtablewidth}|p{0.249\DUtablewidth}|p{0.365\DUtablewidth}|} +\setlength{\DUtablewidth}{40em}% +\begin{longtable}{|p{0.133\DUtablewidth}|p{0.249\DUtablewidth}|p{0.365\DUtablewidth}|} \caption{list table with integral header}\\ \hline \textbf{% @@ -1730,8 +1730,8 @@ physical system changes in time. \begin{description} \item[{Math-Accents:}] \leavevmode -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{p{0.315\DUtablewidth}p{0.315\DUtablewidth}p{0.315\DUtablewidth}} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{p{0.315\DUtablewidth}p{0.315\DUtablewidth}p{0.315\DUtablewidth}} $\acute{a}$ \texttt{\textbackslash{}acute\{a\}} & @@ -1962,8 +1962,8 @@ writer for image, table, and line block elements. A table with multi-paragraph multicolumn cells: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.133\DUtablewidth}|p{0.179\DUtablewidth}|p{0.179\DUtablewidth}|p{0.110\DUtablewidth}|p{0.121\DUtablewidth}|p{0.145\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.133\DUtablewidth}|p{0.179\DUtablewidth}|p{0.179\DUtablewidth}|p{0.110\DUtablewidth}|p{0.121\DUtablewidth}|p{0.145\DUtablewidth}|} \hline test @@ -2022,7 +2022,7 @@ limitation (see \url{https://sourceforge.net/p/docutils/bugs/225/}). A table with multirow header and column-widths set by LaTeX: -\begin{longtable*}[c]{|l|l|} +\begin{longtable*}{|l|l|} \hline \multirow{2}{*}{\textbf{XXX}} & \textbf{Variable Summary} \\ \cline{2-2} @@ -2045,7 +2045,7 @@ A table with multirow header and column-widths set by LaTeX: In a table with column-widths set by LaTeX, each cell has just one line. Paragraphs are merged (a warning is given). -\begin{longtable*}[c]{|l|l|} +\begin{longtable*}{|l|l|} \hline 11 & first paragraph second paragraph @@ -2110,8 +2110,8 @@ width as the third line. Punctuation and footnote symbols -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.028\DUtablewidth}|p{0.424\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.028\DUtablewidth}|p{0.424\DUtablewidth}|} \hline – @@ -2219,8 +2219,8 @@ left-right double arrow The \DUroletitlereference{Latin-1 extended} Unicode block -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.051\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable*}{|p{0.051\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|p{0.028\DUtablewidth}|} \hline % @@ -2563,8 +2563,8 @@ In LaTeX, we must set an explicit anchor (\texttt{\textbackslash{}phantomsection \phantomsection\label{hypertarget-in-plain-text}hypertarget in plain text or in a figure but not in a longtable or caption: -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable}[c]{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} +\setlength{\DUtablewidth}{\linewidth}% +\begin{longtable}{|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|p{0.075\DUtablewidth}|} \caption{Table with % \label{hypertarget-in-table-title}hypertarget in table title.}\\ \hline diff --git a/docutils/test/functional/input/latex_cornercases.txt b/docutils/test/functional/input/latex_cornercases.txt index 311a8d2ab..095d835e1 100644 --- a/docutils/test/functional/input/latex_cornercases.txt +++ b/docutils/test/functional/input/latex_cornercases.txt @@ -147,6 +147,26 @@ Set alignment of nested tables without creating too much vertical space. | Lorem ipsum dolor sit amet, consectetur | adipisicing elit| +-----------------------------------------+-----------------+ | .. table:: | cell 1, 2 | +| | | +| +-----+-----+ | | +| | 1 | 2 | | | +| +-----+-----+ | | ++-----------------------------------------+-----------------+ +| .. table:: | cell 1, 2 | +| :align: left | | +| | | +| +-----+-----+ | | +| | 1 | 2 | | | +| +-----+-----+ | | ++-----------------------------------------+-----------------+ +| .. table:: | cell 1, 2 | +| :align: center | | +| | | +| +-----+-----+ | | +| | 1 | 2 | | | +| +-----+-----+ | | ++-----------------------------------------+-----------------+ +| .. table:: | cell 1, 2 | | :align: right | | | | | | +-----+-----+ | | @@ -165,3 +185,30 @@ Set alignment of nested tables without creating too much vertical space. +-----------------------------------------+-----------------+ | | cell 3, 2 | +-----------------------------------------+-----------------+ + +.. table:: + :class: booktabs + + +-----------------------------------------+-----------------+ + | Lorem ipsum dolor sit amet, consectetur | adipisicing elit| + +-----------------------------------------+-----------------+ + | .. table:: | cell 1, 2 | + | :align: right | | + | | | + | +-----+-----+ | | + | | 1 | 2 | | | + | +-----+-----+ | | + +-----------------------------------------+-----------------+ + | .. table:: | cell 2, 2 | + | :align: right | | + | | | + | +-----+-----+ | | + | | 1 | 2 | | | + | +-----+-----+ | | + | | | + | definition: | | + | list | | + +-----------------------------------------+-----------------+ + | | cell 3, 2 | + +-----------------------------------------+-----------------+ + |
