MediaWiki writer: fix spacing issues.
+ Start cell on new line unless it's a single Para or Plain. + For single Para or Plain, insert a space after the `|` to avoid problems when the text begins with a character like `-`. Closes #2604, closes #2606.
This commit is contained in:
parent
6ed41cbdcc
commit
a68e072bac
2 changed files with 97 additions and 93 deletions
|
@ -306,7 +306,11 @@ tableCellToMediaWiki headless rownum (alignment, width, bs) = do
|
||||||
let attr = if null attrs
|
let attr = if null attrs
|
||||||
then ""
|
then ""
|
||||||
else unwords attrs ++ "|"
|
else unwords attrs ++ "|"
|
||||||
return $ marker ++ attr ++ trimr contents
|
let sep = case bs of
|
||||||
|
[Plain _] -> " "
|
||||||
|
[Para _] -> " "
|
||||||
|
_ -> "\n"
|
||||||
|
return $ marker ++ attr ++ sep ++ trimr contents
|
||||||
|
|
||||||
alignmentToString :: Alignment -> String
|
alignmentToString :: Alignment -> String
|
||||||
alignmentToString alignment = case alignment of
|
alignmentToString alignment = case alignment of
|
||||||
|
|
|
@ -2,145 +2,145 @@ Simple table with caption:
|
||||||
|
|
||||||
{|
|
{|
|
||||||
|+ Demonstration of simple table syntax.
|
|+ Demonstration of simple table syntax.
|
||||||
!align="right"|Right
|
!align="right"| Right
|
||||||
!Left
|
! Left
|
||||||
!align="center"|Center
|
!align="center"| Center
|
||||||
!Default
|
! Default
|
||||||
|-
|
|-
|
||||||
|align="right"|12
|
|align="right"| 12
|
||||||
|12
|
| 12
|
||||||
|align="center"|12
|
|align="center"| 12
|
||||||
|12
|
| 12
|
||||||
|-
|
|-
|
||||||
|align="right"|123
|
|align="right"| 123
|
||||||
|123
|
| 123
|
||||||
|align="center"|123
|
|align="center"| 123
|
||||||
|123
|
| 123
|
||||||
|-
|
|-
|
||||||
|align="right"|1
|
|align="right"| 1
|
||||||
|1
|
| 1
|
||||||
|align="center"|1
|
|align="center"| 1
|
||||||
|1
|
| 1
|
||||||
|}
|
|}
|
||||||
|
|
||||||
Simple table without caption:
|
Simple table without caption:
|
||||||
|
|
||||||
{|
|
{|
|
||||||
!align="right"|Right
|
!align="right"| Right
|
||||||
!Left
|
! Left
|
||||||
!align="center"|Center
|
!align="center"| Center
|
||||||
!Default
|
! Default
|
||||||
|-
|
|-
|
||||||
|align="right"|12
|
|align="right"| 12
|
||||||
|12
|
| 12
|
||||||
|align="center"|12
|
|align="center"| 12
|
||||||
|12
|
| 12
|
||||||
|-
|
|-
|
||||||
|align="right"|123
|
|align="right"| 123
|
||||||
|123
|
| 123
|
||||||
|align="center"|123
|
|align="center"| 123
|
||||||
|123
|
| 123
|
||||||
|-
|
|-
|
||||||
|align="right"|1
|
|align="right"| 1
|
||||||
|1
|
| 1
|
||||||
|align="center"|1
|
|align="center"| 1
|
||||||
|1
|
| 1
|
||||||
|}
|
|}
|
||||||
|
|
||||||
Simple table indented two spaces:
|
Simple table indented two spaces:
|
||||||
|
|
||||||
{|
|
{|
|
||||||
|+ Demonstration of simple table syntax.
|
|+ Demonstration of simple table syntax.
|
||||||
!align="right"|Right
|
!align="right"| Right
|
||||||
!Left
|
! Left
|
||||||
!align="center"|Center
|
!align="center"| Center
|
||||||
!Default
|
! Default
|
||||||
|-
|
|-
|
||||||
|align="right"|12
|
|align="right"| 12
|
||||||
|12
|
| 12
|
||||||
|align="center"|12
|
|align="center"| 12
|
||||||
|12
|
| 12
|
||||||
|-
|
|-
|
||||||
|align="right"|123
|
|align="right"| 123
|
||||||
|123
|
| 123
|
||||||
|align="center"|123
|
|align="center"| 123
|
||||||
|123
|
| 123
|
||||||
|-
|
|-
|
||||||
|align="right"|1
|
|align="right"| 1
|
||||||
|1
|
| 1
|
||||||
|align="center"|1
|
|align="center"| 1
|
||||||
|1
|
| 1
|
||||||
|}
|
|}
|
||||||
|
|
||||||
Multiline table with caption:
|
Multiline table with caption:
|
||||||
|
|
||||||
{|
|
{|
|
||||||
|+ Here's the caption. It may span multiple lines.
|
|+ Here's the caption. It may span multiple lines.
|
||||||
!align="center" width="15%"|Centered Header
|
!align="center" width="15%"| Centered Header
|
||||||
!width="13%"|Left Aligned
|
!width="13%"| Left Aligned
|
||||||
!align="right" width="16%"|Right Aligned
|
!align="right" width="16%"| Right Aligned
|
||||||
!width="33%"|Default aligned
|
!width="33%"| Default aligned
|
||||||
|-
|
|-
|
||||||
|align="center"|First
|
|align="center"| First
|
||||||
|row
|
| row
|
||||||
|align="right"|12.0
|
|align="right"| 12.0
|
||||||
|Example of a row that spans multiple lines.
|
| Example of a row that spans multiple lines.
|
||||||
|-
|
|-
|
||||||
|align="center"|Second
|
|align="center"| Second
|
||||||
|row
|
| row
|
||||||
|align="right"|5.0
|
|align="right"| 5.0
|
||||||
|Here's another one. Note the blank line between rows.
|
| Here's another one. Note the blank line between rows.
|
||||||
|}
|
|}
|
||||||
|
|
||||||
Multiline table without caption:
|
Multiline table without caption:
|
||||||
|
|
||||||
{|
|
{|
|
||||||
!align="center" width="15%"|Centered Header
|
!align="center" width="15%"| Centered Header
|
||||||
!width="13%"|Left Aligned
|
!width="13%"| Left Aligned
|
||||||
!align="right" width="16%"|Right Aligned
|
!align="right" width="16%"| Right Aligned
|
||||||
!width="33%"|Default aligned
|
!width="33%"| Default aligned
|
||||||
|-
|
|-
|
||||||
|align="center"|First
|
|align="center"| First
|
||||||
|row
|
| row
|
||||||
|align="right"|12.0
|
|align="right"| 12.0
|
||||||
|Example of a row that spans multiple lines.
|
| Example of a row that spans multiple lines.
|
||||||
|-
|
|-
|
||||||
|align="center"|Second
|
|align="center"| Second
|
||||||
|row
|
| row
|
||||||
|align="right"|5.0
|
|align="right"| 5.0
|
||||||
|Here's another one. Note the blank line between rows.
|
| Here's another one. Note the blank line between rows.
|
||||||
|}
|
|}
|
||||||
|
|
||||||
Table without column headers:
|
Table without column headers:
|
||||||
|
|
||||||
{|
|
{|
|
||||||
|align="right"|12
|
|align="right"| 12
|
||||||
|12
|
| 12
|
||||||
|align="center"|12
|
|align="center"| 12
|
||||||
|align="right"|12
|
|align="right"| 12
|
||||||
|-
|
|-
|
||||||
|align="right"|123
|
|align="right"| 123
|
||||||
|123
|
| 123
|
||||||
|align="center"|123
|
|align="center"| 123
|
||||||
|align="right"|123
|
|align="right"| 123
|
||||||
|-
|
|-
|
||||||
|align="right"|1
|
|align="right"| 1
|
||||||
|1
|
| 1
|
||||||
|align="center"|1
|
|align="center"| 1
|
||||||
|align="right"|1
|
|align="right"| 1
|
||||||
|}
|
|}
|
||||||
|
|
||||||
Multiline table without column headers:
|
Multiline table without column headers:
|
||||||
|
|
||||||
{|
|
{|
|
||||||
|align="center" width="15%"|First
|
|align="center" width="15%"| First
|
||||||
|width="13%"|row
|
|width="13%"| row
|
||||||
|align="right" width="16%"|12.0
|
|align="right" width="16%"| 12.0
|
||||||
|width="33%"|Example of a row that spans multiple lines.
|
|width="33%"| Example of a row that spans multiple lines.
|
||||||
|-
|
|-
|
||||||
|align="center"|Second
|
|align="center"| Second
|
||||||
|row
|
| row
|
||||||
|align="right"|5.0
|
|align="right"| 5.0
|
||||||
|Here's another one. Note the blank line between rows.
|
| Here's another one. Note the blank line between rows.
|
||||||
|}
|
|}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue