git.iko.soy/typeable/pandoc
on master help sign in
LaTeX tables: Fix calculation of column spacing.

See #6883.

commitb50ac3a95b17e20db0289b4e08b23cefe2282bc9 authorJohn MacFarlane <jgm@berkeley.edu> dateWed 25 Nov 2020, 14:41 (6 years ago) parent815976d
2 files changed+37−37
src/Text/Pandoc/Writers/LaTeX.hs+1−1 test/tables.latex+36−36
src/Text/Pandoc/Writers/LaTeX.hs+1−1
@@ -913,7 +913,7 @@ tableCellToLaTeX header numcols (width, align, blocks) = do
913913 return $ "\\begin{minipage}" <> valign <>
914914 braces (text (printf
915915 "(\\columnwidth - %d\\tabcolsep) * \\real{%.2f}"
916− (numcols - 1) width)) <>
916+ (2 * (numcols - 1)) width)) <>
917917 halign <> cr <> cellContents <> cr <>
918918 "\\end{minipage}"
919919-- (\columnwidth - 8\tabcolsep) * \real{0.15}
test/tables.latex+36−36
@@ -52,57 +52,57 @@ Multiline table with caption:
5252\begin{longtable}[]{@{}clrl@{}}
5353\caption{Here's the caption. It may span multiple lines.}\tabularnewline
5454\toprule
55−\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering
55+\begin{minipage}[b]{(\columnwidth - 6\tabcolsep) * \real{0.15}}\centering
5656Centered Header
5757\end{minipage} &
58−\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright
58+\begin{minipage}[b]{(\columnwidth - 6\tabcolsep) * \real{0.14}}\raggedright
5959Left Aligned
6060\end{minipage} &
61−\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft
61+\begin{minipage}[b]{(\columnwidth - 6\tabcolsep) * \real{0.16}}\raggedleft
6262Right Aligned
6363\end{minipage} &
64−\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright
64+\begin{minipage}[b]{(\columnwidth - 6\tabcolsep) * \real{0.35}}\raggedright
6565Default aligned
6666\end{minipage} \\ \addlinespace
6767\midrule
6868\endfirsthead
6969\toprule
70−\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering
70+\begin{minipage}[b]{(\columnwidth - 6\tabcolsep) * \real{0.15}}\centering
7171Centered Header
7272\end{minipage} &
73−\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright
73+\begin{minipage}[b]{(\columnwidth - 6\tabcolsep) * \real{0.14}}\raggedright
7474Left Aligned
7575\end{minipage} &
76−\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft
76+\begin{minipage}[b]{(\columnwidth - 6\tabcolsep) * \real{0.16}}\raggedleft
7777Right Aligned
7878\end{minipage} &
79−\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright
79+\begin{minipage}[b]{(\columnwidth - 6\tabcolsep) * \real{0.35}}\raggedright
8080Default aligned
8181\end{minipage} \\ \addlinespace
8282\midrule
8383\endhead
84−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering
84+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.15}}\centering
8585First
8686\end{minipage} &
87−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright
87+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.14}}\raggedright
8888row
8989\end{minipage} &
90−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft
90+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.16}}\raggedleft
919112.0
9292\end{minipage} &
93−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright
93+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.35}}\raggedright
9494Example of a row that spans multiple lines.
9595\end{minipage} \\ \addlinespace
96−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering
96+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.15}}\centering
9797Second
9898\end{minipage} &
99−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright
99+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.14}}\raggedright
100100row
101101\end{minipage} &
102−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft
102+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.16}}\raggedleft
1031035.0
104104\end{minipage} &
105−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright
105+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.35}}\raggedright
106106Here's another one. Note the blank line between rows.
107107\end{minipage} \\ \addlinespace
108108\bottomrule
@@ -112,42 +112,42 @@ Multiline table without caption:
112112
113113\begin{longtable}[]{@{}clrl@{}}
114114\toprule
115−\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering
115+\begin{minipage}[b]{(\columnwidth - 6\tabcolsep) * \real{0.15}}\centering
116116Centered Header
117117\end{minipage} &
118−\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright
118+\begin{minipage}[b]{(\columnwidth - 6\tabcolsep) * \real{0.14}}\raggedright
119119Left Aligned
120120\end{minipage} &
121−\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft
121+\begin{minipage}[b]{(\columnwidth - 6\tabcolsep) * \real{0.16}}\raggedleft
122122Right Aligned
123123\end{minipage} &
124−\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright
124+\begin{minipage}[b]{(\columnwidth - 6\tabcolsep) * \real{0.35}}\raggedright
125125Default aligned
126126\end{minipage} \\ \addlinespace
127127\midrule
128128\endhead
129−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering
129+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.15}}\centering
130130First
131131\end{minipage} &
132−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright
132+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.14}}\raggedright
133133row
134134\end{minipage} &
135−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft
135+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.16}}\raggedleft
13613612.0
137137\end{minipage} &
138−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright
138+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.35}}\raggedright
139139Example of a row that spans multiple lines.
140140\end{minipage} \\ \addlinespace
141−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering
141+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.15}}\centering
142142Second
143143\end{minipage} &
144−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright
144+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.14}}\raggedright
145145row
146146\end{minipage} &
147−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft
147+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.16}}\raggedleft
1481485.0
149149\end{minipage} &
150−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright
150+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.35}}\raggedright
151151Here's another one. Note the blank line between rows.
152152\end{minipage} \\ \addlinespace
153153\bottomrule
@@ -169,28 +169,28 @@ Multiline table without column headers:
169169\begin{longtable}[]{@{}clrl@{}}
170170\toprule
171171\endhead
172−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering
172+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.15}}\centering
173173First
174174\end{minipage} &
175−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright
175+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.14}}\raggedright
176176row
177177\end{minipage} &
178−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft
178+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.16}}\raggedleft
17917912.0
180180\end{minipage} &
181−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright
181+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.35}}\raggedright
182182Example of a row that spans multiple lines.
183183\end{minipage} \\ \addlinespace
184−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering
184+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.15}}\centering
185185Second
186186\end{minipage} &
187−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright
187+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.14}}\raggedright
188188row
189189\end{minipage} &
190−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft
190+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.16}}\raggedleft
1911915.0
192192\end{minipage} &
193−\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright
193+\begin{minipage}[t]{(\columnwidth - 6\tabcolsep) * \real{0.35}}\raggedright
194194Here's another one. Note the blank line between rows.
195195\end{minipage} \\ \addlinespace
196196\bottomrule