aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Writers/Markdown.hs
diff options
context:
space:
mode:
authorVaibhav Sagar <vaibhavsagar@gmail.com>2020-04-28 22:53:06 +0800
committerGitHub <noreply@github.com>2020-04-28 07:53:06 -0700
commit9c2b659eeb196145f62d8eae0072c279a7c2d751 (patch)
treef3c97feb0f1d063e2a7c65904c9fbe1591104a05 /src/Text/Pandoc/Writers/Markdown.hs
parent8d09a92d979126a53ec72ec73294ad04f811e9a7 (diff)
downloadpandoc-9c2b659eeb196145f62d8eae0072c279a7c2d751.tar.gz
Support new Underline element in readers and writers (#6277)
Deprecate `underlineSpan` in Shared in favor of `Text.Pandoc.Builder.underline`.
Diffstat (limited to 'src/Text/Pandoc/Writers/Markdown.hs')
-rw-r--r--src/Text/Pandoc/Writers/Markdown.hs15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/Text/Pandoc/Writers/Markdown.hs b/src/Text/Pandoc/Writers/Markdown.hs
index fb9888b24..c6a9d9d80 100644
--- a/src/Text/Pandoc/Writers/Markdown.hs
+++ b/src/Text/Pandoc/Writers/Markdown.hs
@@ -1045,6 +1045,21 @@ inlineToMarkdown opts (Emph lst) = do
then "_" <> contents <> "_"
else contents
else "*" <> contents <> "*"
+inlineToMarkdown _ (Underline []) = return empty
+inlineToMarkdown opts (Underline lst) = do
+ plain <- asks envPlain
+ contents <- inlineListToMarkdown opts lst
+ case plain of
+ True -> return contents
+ False | isEnabled Ext_bracketed_spans opts ->
+ return $ "[" <> contents <> "]" <> "{.ul}"
+ | isEnabled Ext_native_spans opts ->
+ return $ tagWithAttrs "span" ("", ["underline"], [])
+ <> contents
+ <> literal "</span>"
+ | isEnabled Ext_raw_html opts ->
+ return $ "<u>" <> contents <> "</u>"
+ | otherwise -> inlineToMarkdown opts (Emph lst)
inlineToMarkdown _ (Strong []) = return empty
inlineToMarkdown opts (Strong lst) = do
plain <- asks envPlain