From 8ced8cbc6e03212f7a9bd871d74ba0e2622c6233 Mon Sep 17 00:00:00 2001 From: Jesse Rosenthal Date: Thu, 8 Dec 2016 06:57:38 -0500 Subject: [PATCH] Docx reader: Ensure one-row tables don't have header. Tables in MS Word are set by default to have special first-row formatting, which pandoc uses to determine whether or not they have a header. This means that one-row tables will, by default, have only a header -- which we imagine is not what people want. This change ensures that a one-row table is not understood to be a header only. Note that this means that it is impossible to produce a header-only table from docx, even though it is legal pandoc. But we believe that in nearly all cases, it will be an accidental (and unwelcome) result Closes #3285. --- src/Text/Pandoc/Readers/Docx.hs | 3 ++- tests/Tests/Readers/Docx.hs | 4 ++++ tests/docx/table_one_row.docx | Bin 0 -> 25251 bytes tests/docx/table_one_row.native | 5 +++++ 4 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 tests/docx/table_one_row.docx create mode 100644 tests/docx/table_one_row.native diff --git a/src/Text/Pandoc/Readers/Docx.hs b/src/Text/Pandoc/Readers/Docx.hs index 9fe3a3fea..c8a09248a 100644 --- a/src/Text/Pandoc/Readers/Docx.hs +++ b/src/Text/Pandoc/Readers/Docx.hs @@ -568,7 +568,8 @@ bodyPartToBlocks (Tbl _ _ _ []) = bodyPartToBlocks (Tbl cap _ look (r:rs)) = do let caption = text cap (hdr, rows) = case firstRowFormatting look of - True -> (Just r, rs) + True | null rs -> (Nothing, [r]) + | otherwise -> (Just r, rs) False -> (Nothing, r:rs) hdrCells <- case hdr of Just r' -> rowToBlocksList r' diff --git a/tests/Tests/Readers/Docx.hs b/tests/Tests/Readers/Docx.hs index 2fe98b8ac..0d31eb629 100644 --- a/tests/Tests/Readers/Docx.hs +++ b/tests/Tests/Readers/Docx.hs @@ -241,6 +241,10 @@ tests = [ testGroup "inlines" "tables with lists in cells" "docx/table_with_list_cell.docx" "docx/table_with_list_cell.native" + , testCompare + "tables with one row" + "docx/table_one_row.docx" + "docx/table_one_row.native" , testCompare "code block" "docx/codeblock.docx" diff --git a/tests/docx/table_one_row.docx b/tests/docx/table_one_row.docx new file mode 100644 index 0000000000000000000000000000000000000000..f7e0ebe43d36f6efe938dec546dc63424641ad39 GIT binary patch literal 25251 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 S&UrAwKV>l7MbDQLfd2)SL-ZQ} literal 0 HcmV?d00001 diff --git a/tests/docx/table_one_row.native b/tests/docx/table_one_row.native new file mode 100644 index 000000000..bd1bf8145 --- /dev/null +++ b/tests/docx/table_one_row.native @@ -0,0 +1,5 @@ +[Table [] [AlignDefault,AlignDefault,AlignDefault] [0.0,0.0,0.0] + [] + [[[Plain [Str "One"]] + ,[Plain [Str "Row"]] + ,[Plain [Str "Table"]]]]]