From bef0133fe044350caeee24cdf79203a9306534da Mon Sep 17 00:00:00 2001 From: Albert Krewinkel <albert@zeitkraut.de> Date: Tue, 7 Jan 2020 20:45:10 +0100 Subject: [PATCH] Jira writer: fix output of table headers Headers were missing from tables. Fixes: #6035 --- src/Text/Pandoc/Writers/Jira.hs | 8 ++++---- test/tables.jira | 5 +++++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/Text/Pandoc/Writers/Jira.hs b/src/Text/Pandoc/Writers/Jira.hs index ccb0ff187..74e204418 100644 --- a/src/Text/Pandoc/Writers/Jira.hs +++ b/src/Text/Pandoc/Writers/Jira.hs @@ -84,7 +84,7 @@ toJiraBlocks :: PandocMonad m => [Block] -> JiraConverter m [Jira.Block] toJiraBlocks blocks = do let convert = \case BlockQuote bs -> singleton . Jira.BlockQuote - <$> toJiraBlocks bs -- FIXME! + <$> toJiraBlocks bs BulletList items -> singleton . Jira.List Jira.CircleBullets <$> toJiraItems items CodeBlock attr cs -> toJiraCode attr cs @@ -100,9 +100,9 @@ toJiraBlocks blocks = do RawBlock fmt cs -> rawBlockToJira fmt cs Null -> return mempty Table _ _ _ hd body -> singleton <$> do - headerRow <- if null hd - then Just <$> toRow Jira.HeaderCell hd - else pure Nothing + headerRow <- if all null hd + then pure Nothing + else Just <$> toRow Jira.HeaderCell hd bodyRows <- mapM (toRow Jira.BodyCell) body let rows = case headerRow of Just header -> header : bodyRows diff --git a/test/tables.jira b/test/tables.jira index 65550bfaf..966eeebf9 100644 --- a/test/tables.jira +++ b/test/tables.jira @@ -1,28 +1,33 @@ Simple table with caption: +|| Right || Left || Center || Default || | 12 | 12 | 12 | 12 | | 123 | 123 | 123 | 123 | | 1 | 1 | 1 | 1 | Simple table without caption: +|| Right || Left || Center || Default || | 12 | 12 | 12 | 12 | | 123 | 123 | 123 | 123 | | 1 | 1 | 1 | 1 | Simple table indented two spaces: +|| Right || Left || Center || Default || | 12 | 12 | 12 | 12 | | 123 | 123 | 123 | 123 | | 1 | 1 | 1 | 1 | Multiline table with caption: +|| Centered Header || Left Aligned || Right Aligned || Default aligned || | First | row | 12.0 | Example of a row that spans multiple lines. | | Second | row | 5.0 | Here’s another one. Note the blank line between rows. | Multiline table without caption: +|| Centered Header || Left Aligned || Right Aligned || Default aligned || | First | row | 12.0 | Example of a row that spans multiple lines. | | Second | row | 5.0 | Here’s another one. Note the blank line between rows. |