diff options
-rw-r--r-- | src/Text/Pandoc/Writers/Markdown.hs | 8 | ||||
-rw-r--r-- | test/writer.markdown | 8 |
2 files changed, 10 insertions, 6 deletions
diff --git a/src/Text/Pandoc/Writers/Markdown.hs b/src/Text/Pandoc/Writers/Markdown.hs index 1e0d8bde2..837c177f1 100644 --- a/src/Text/Pandoc/Writers/Markdown.hs +++ b/src/Text/Pandoc/Writers/Markdown.hs @@ -280,8 +280,12 @@ escapeString :: WriterOptions -> String -> String escapeString _ [] = [] escapeString opts (c:cs) = case c of - '<' -> "<" ++ escapeString opts cs - '>' -> ">" ++ escapeString opts cs + '<' | isEnabled Ext_all_symbols_escapable opts -> + '\\' : '<' : escapeString opts cs + | otherwise -> "<" ++ escapeString opts cs + '>' | isEnabled Ext_all_symbols_escapable opts -> + '\\' : '>' : escapeString opts cs + | otherwise -> ">" ++ escapeString opts cs _ | c `elem` ['\\','`','*','_','[',']','#'] -> '\\':c:escapeString opts cs '^' | isEnabled Ext_superscript opts -> '\\':'^':escapeString opts cs diff --git a/test/writer.markdown b/test/writer.markdown index d41030785..0cc465f1e 100644 --- a/test/writer.markdown +++ b/test/writer.markdown @@ -80,7 +80,7 @@ E-mail style: > > > nested -This should not be a block quote: 2 > 1. +This should not be a block quote: 2 \> 1. And a following paragraph. @@ -580,9 +580,9 @@ AT&T is another way to write it. This & that. -4 < 5. +4 \< 5. -6 > 5. +6 \> 5. Backslash: \\ @@ -604,7 +604,7 @@ Left paren: ( Right paren: ) -Greater-than: > +Greater-than: \> Hash: \# |