From fd5994cc5ebe478eea133c0fd7c3705330c0e1ef Mon Sep 17 00:00:00 2001 From: Joe Hermaszewski Date: Sat, 21 Apr 2018 12:36:44 +0800 Subject: Haddock Writer: Support Haddock tables See this PR on Haddock for details on the table format: https://github.com/haskell/haddock/pull/718 --- src/Text/Pandoc/Writers/Haddock.hs | 2 +- test/tables.haddock | 140 ++++++++++++++++++------------------- 2 files changed, 71 insertions(+), 71 deletions(-) diff --git a/src/Text/Pandoc/Writers/Haddock.hs b/src/Text/Pandoc/Writers/Haddock.hs index 925160602..687c76b17 100644 --- a/src/Text/Pandoc/Writers/Haddock.hs +++ b/src/Text/Pandoc/Writers/Haddock.hs @@ -124,7 +124,7 @@ blockToHaddock opts (Table _ blkCapt specs thead tbody tfoot) = do tbl <- gridTable opts blockListToHaddock (all null headers) (map (const AlignDefault) aligns) widths headers rows - return $ prefixed "> " (tbl $$ blankline $$ caption'') $$ blankline + return $ (tbl $$ blankline $$ caption'') $$ blankline blockToHaddock opts (BulletList items) = do contents <- mapM (bulletListItemToHaddock opts) items return $ (if isTightList items then vcat else vsep) contents <> blankline diff --git a/test/tables.haddock b/test/tables.haddock index dcfc0f7ad..fcc26d27e 100644 --- a/test/tables.haddock +++ b/test/tables.haddock @@ -1,90 +1,90 @@ Simple table with caption: -> +-------+------+--------+---------+ -> | Right | Left | Center | Default | -> +=======+======+========+=========+ -> | 12 | 12 | 12 | 12 | -> +-------+------+--------+---------+ -> | 123 | 123 | 123 | 123 | -> +-------+------+--------+---------+ -> | 1 | 1 | 1 | 1 | -> +-------+------+--------+---------+ -> -> Demonstration of simple table syntax. ++-------+------+--------+---------+ +| Right | Left | Center | Default | ++=======+======+========+=========+ +| 12 | 12 | 12 | 12 | ++-------+------+--------+---------+ +| 123 | 123 | 123 | 123 | ++-------+------+--------+---------+ +| 1 | 1 | 1 | 1 | ++-------+------+--------+---------+ + +Demonstration of simple table syntax. Simple table without caption: -> +-------+------+--------+---------+ -> | Right | Left | Center | Default | -> +=======+======+========+=========+ -> | 12 | 12 | 12 | 12 | -> +-------+------+--------+---------+ -> | 123 | 123 | 123 | 123 | -> +-------+------+--------+---------+ -> | 1 | 1 | 1 | 1 | -> +-------+------+--------+---------+ ++-------+------+--------+---------+ +| 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 | -> +-------+------+--------+---------+ -> -> Demonstration of simple table syntax. ++-------+------+--------+---------+ +| Right | Left | Center | Default | ++=======+======+========+=========+ +| 12 | 12 | 12 | 12 | ++-------+------+--------+---------+ +| 123 | 123 | 123 | 123 | ++-------+------+--------+---------+ +| 1 | 1 | 1 | 1 | ++-------+------+--------+---------+ + +Demonstration of simple table syntax. Multiline table with caption: -> +----------+---------+-----------+--------------------------+ -> | Centered | Left | Right | Default aligned | -> | Header | Aligned | 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. | -> +----------+---------+-----------+--------------------------+ -> -> Here’s the caption. It may span multiple lines. ++----------+---------+-----------+--------------------------+ +| Centered | Left | Right | Default aligned | +| Header | Aligned | 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. | ++----------+---------+-----------+--------------------------+ + +Here’s the caption. It may span multiple lines. Multiline table without caption: -> +----------+---------+-----------+--------------------------+ -> | Centered | Left | Right | Default aligned | -> | Header | Aligned | 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. | -> +----------+---------+-----------+--------------------------+ ++----------+---------+-----------+--------------------------+ +| Centered | Left | Right | Default aligned | +| Header | Aligned | 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. | ++----------+---------+-----------+--------------------------+ Table without column headers: -> +-----+-----+-----+-----+ -> | 12 | 12 | 12 | 12 | -> +-----+-----+-----+-----+ -> | 123 | 123 | 123 | 123 | -> +-----+-----+-----+-----+ -> | 1 | 1 | 1 | 1 | -> +-----+-----+-----+-----+ ++-----+-----+-----+-----+ +| 12 | 12 | 12 | 12 | ++-----+-----+-----+-----+ +| 123 | 123 | 123 | 123 | ++-----+-----+-----+-----+ +| 1 | 1 | 1 | 1 | ++-----+-----+-----+-----+ Multiline table without column headers: -> +----------+---------+-----------+--------------------------+ -> | 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. | -> +----------+---------+-----------+--------------------------+ ++----------+---------+-----------+--------------------------+ +| 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. | ++----------+---------+-----------+--------------------------+ -- cgit v1.2.3