From 499fc11fca83cf4991cb9bce223fa3d046d4fa68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laurent=20P=2E=20Ren=C3=A9=20de=20Cotret?= Date: Sat, 8 Aug 2020 01:45:47 -0400 Subject: [PATCH] [Latex Reader] Table cell parser not consuming spaces correctly (#6597) * Added test to replicate (#6596) * Table cell reader not consuming spaces correctly (#6596) --- src/Text/Pandoc/Readers/LaTeX.hs | 2 ++ test/Tests/Readers/LaTeX.hs | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/src/Text/Pandoc/Readers/LaTeX.hs b/src/Text/Pandoc/Readers/LaTeX.hs index af00813b6..9ab4b3cb8 100644 --- a/src/Text/Pandoc/Readers/LaTeX.hs +++ b/src/Text/Pandoc/Readers/LaTeX.hs @@ -2387,9 +2387,11 @@ parseTableRow envname prefsufs = do parseTableCell :: PandocMonad m => LP m Cell parseTableCell = do + spaces updateState $ \st -> st{ sInTableCell = True } cell' <- parseMultiCell <|> parseSimpleCell updateState $ \st -> st{ sInTableCell = False } + spaces return cell' cellAlignment :: PandocMonad m => LP m Alignment diff --git a/test/Tests/Readers/LaTeX.hs b/test/Tests/Readers/LaTeX.hs index 74906fab4..a8d969659 100644 --- a/test/Tests/Readers/LaTeX.hs +++ b/test/Tests/Readers/LaTeX.hs @@ -148,6 +148,13 @@ tests = [ testGroup "tokenization" , simpleCell (plain "Two") ] ] + , "table with multicolumn item (#6596)" =: + "\\begin{tabular}{l c r}One & \\multicolumn{2}{c}{Two} & \\\\ \\end{tabular}" =?> + table' [AlignLeft, AlignCenter, AlignRight] + [ Row nullAttr [ simpleCell (plain "One") + , cell AlignCenter (RowSpan 1) (ColSpan 2) (plain "Two") + ] + ] , "Table with multirow item" =: T.unlines ["\\begin{tabular}{c}" ,"\\multirow{2}{c}{One}\\\\Two\\\\"