diff options
author | fiddlosopher <fiddlosopher@788f1e2b-df1e-0410-8736-df70ead52e1b> | 2009-02-07 19:20:35 +0000 |
---|---|---|
committer | fiddlosopher <fiddlosopher@788f1e2b-df1e-0410-8736-df70ead52e1b> | 2009-02-07 19:20:35 +0000 |
commit | dcedb2f71243197f34c241b28b8ae76c2f1422c6 (patch) | |
tree | 02d2a4f2cb871e959bee09adc85ea201efa409c4 /src/Text/Pandoc/Writers/Markdown.hs | |
parent | a03331a3b45946a20fcb7181ea9cb29b5fb088a8 (diff) | |
download | pandoc-dcedb2f71243197f34c241b28b8ae76c2f1422c6.tar.gz |
Fixed bug with header spacing in Markdown and RST writers.
A null header (Meta [] [] []) should not cause a blank line
at the beginning of output. But a blank line is needed between
a non-null header and the main text.
git-svn-id: https://pandoc.googlecode.com/svn/trunk@1536 788f1e2b-df1e-0410-8736-df70ead52e1b
Diffstat (limited to 'src/Text/Pandoc/Writers/Markdown.hs')
-rw-r--r-- | src/Text/Pandoc/Writers/Markdown.hs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/Text/Pandoc/Writers/Markdown.hs b/src/Text/Pandoc/Writers/Markdown.hs index 70d1f0c91..bebb88a76 100644 --- a/src/Text/Pandoc/Writers/Markdown.hs +++ b/src/Text/Pandoc/Writers/Markdown.hs @@ -52,11 +52,13 @@ pandocToMarkdown :: WriterOptions -> Pandoc -> State WriterState Doc pandocToMarkdown opts (Pandoc meta blocks) = do let before = writerIncludeBefore opts let after = writerIncludeAfter opts + let header = writerHeader opts let before' = if null before then empty else text before let after' = if null after then empty else text after + let header' = if null header then empty else text header metaBlock <- metaToMarkdown opts meta let head' = if writerStandalone opts - then metaBlock $+$ text (writerHeader opts) + then metaBlock $+$ header' else empty let headerBlocks = filter isHeaderBlock blocks let toc = if writerTableOfContents opts @@ -104,11 +106,12 @@ escapeString = escapeStringUsing markdownEscapes -- | Convert bibliographic information into Markdown header. metaToMarkdown :: WriterOptions -> Meta -> State WriterState Doc +metaToMarkdown _ (Meta [] [] []) = return empty metaToMarkdown opts (Meta title authors date) = do title' <- titleToMarkdown opts title authors' <- authorsToMarkdown authors date' <- dateToMarkdown date - return $ title' $+$ authors' $+$ date' + return $ title' $+$ authors' $+$ date' $+$ text "" titleToMarkdown :: WriterOptions -> [Inline] -> State WriterState Doc titleToMarkdown _ [] = return empty |