From aeb11cea4eb1d0e6f68ad71cd178cd8636dcbf5f Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Sun, 5 Mar 2017 15:27:40 +0100 Subject: Markdown writer: escape initial % in a paragraph... ...if the `pandoc_title_blocks` extension is enabled. Otherwise in a document starting with a literal percent sign the first line is wrongly interpreted as a title. Closes #3454. --- src/Text/Pandoc/Writers/Markdown.hs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/Text/Pandoc/Writers/Markdown.hs b/src/Text/Pandoc/Writers/Markdown.hs index 7dc472568..f665ec448 100644 --- a/src/Text/Pandoc/Writers/Markdown.hs +++ b/src/Text/Pandoc/Writers/Markdown.hs @@ -405,7 +405,11 @@ blockToMarkdown' opts (Plain inlines) = do not isPlain && beginsWithOrderedListMarker rendered then text $ escapeDelimiter rendered else contents - return $ contents' <> cr + -- escape if para starts with % + return $ + if isEnabled Ext_pandoc_title_block opts && take 1 rendered == "%" + then "\\" <> contents' <> cr + else contents' <> cr -- title beginning with fig: indicates figure blockToMarkdown' opts (Para [Image attr alt (src,'f':'i':'g':':':tit)]) = blockToMarkdown opts (Para [Image attr alt (src,tit)]) -- cgit v1.2.3