diff options
| author | John MacFarlane <jgm@berkeley.edu> | 2010-07-06 21:01:26 -0700 | 
|---|---|---|
| committer | John MacFarlane <jgm@berkeley.edu> | 2010-07-06 21:02:26 -0700 | 
| commit | 7d687684aa4ca0ebbdf4d9a0bcaa1d3ea1a8b7b3 (patch) | |
| tree | e089b68600d619dcb18ecf7cdbd4f1f7fd8f11e5 /src | |
| parent | 6a8fa53f6cb276d034c607f58d3c458a712b6eae (diff) | |
| download | pandoc-7d687684aa4ca0ebbdf4d9a0bcaa1d3ea1a8b7b3.tar.gz | |
Allow language-neutral table captions.
+ Captions may now begin simply with ':', instead of 'Table:'
+ Captions may now appear either above or below the table.
+ Resolves Issue #227.
Diffstat (limited to 'src')
| -rw-r--r-- | src/Text/Pandoc/Parsing.hs | 5 | ||||
| -rw-r--r-- | src/Text/Pandoc/Readers/Markdown.hs | 2 | ||||
| -rw-r--r-- | src/Text/Pandoc/Writers/Markdown.hs | 2 | 
3 files changed, 6 insertions, 3 deletions
| diff --git a/src/Text/Pandoc/Parsing.hs b/src/Text/Pandoc/Parsing.hs index 2709a1b0f..cf46bf216 100644 --- a/src/Text/Pandoc/Parsing.hs +++ b/src/Text/Pandoc/Parsing.hs @@ -415,10 +415,13 @@ tableWith :: GenParser Char ParserState ([[Block]], [Alignment], [Int])            -> GenParser Char ParserState [Inline]            -> GenParser Char ParserState Block  tableWith headerParser rowParser lineParser footerParser captionParser = try $ do +    caption' <- option [] captionParser      (heads, aligns, indices) <- headerParser      lines' <- rowParser indices `sepEndBy` lineParser      footerParser -    caption <- option [] captionParser +    caption <- if null caption' +                  then option [] captionParser +                  else return caption'      state <- getState      let numColumns = stateColumns state      let widths = widthsFromIndices numColumns indices diff --git a/src/Text/Pandoc/Readers/Markdown.hs b/src/Text/Pandoc/Readers/Markdown.hs index 96e0f597f..6895de06b 100644 --- a/src/Text/Pandoc/Readers/Markdown.hs +++ b/src/Text/Pandoc/Readers/Markdown.hs @@ -775,7 +775,7 @@ multilineRow indices = do  tableCaption :: GenParser Char ParserState [Inline]  tableCaption = try $ do    skipNonindentSpaces -  string "Table:" +  string ":" <|> string "Table:"    result <- many1 inline    blanklines    return $ normalizeSpaces result diff --git a/src/Text/Pandoc/Writers/Markdown.hs b/src/Text/Pandoc/Writers/Markdown.hs index 238405337..d72fb5eb5 100644 --- a/src/Text/Pandoc/Writers/Markdown.hs +++ b/src/Text/Pandoc/Writers/Markdown.hs @@ -239,7 +239,7 @@ blockToMarkdown opts (Table caption aligns widths headers rows) =  do    caption' <- inlineListToMarkdown opts caption    let caption'' = if null caption                       then empty -                     else text "" $+$ (text "Table: " <> caption') +                     else text "" $+$ (text ": " <> caption')    headers' <- mapM (blockListToMarkdown opts) headers    let alignHeader alignment = case alignment of                                  AlignLeft    -> leftAlignBlock | 
