summaryrefslogtreecommitdiff
path: root/src/Text
diff options
context:
space:
mode:
Diffstat (limited to 'src/Text')
-rw-r--r--src/Text/Pandoc/Writers/AsciiDoc.hs10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/Text/Pandoc/Writers/AsciiDoc.hs b/src/Text/Pandoc/Writers/AsciiDoc.hs
index 1c54584c4..54fd33596 100644
--- a/src/Text/Pandoc/Writers/AsciiDoc.hs
+++ b/src/Text/Pandoc/Writers/AsciiDoc.hs
@@ -40,7 +40,7 @@ import Text.Pandoc.Shared
import Text.Pandoc.URI
import Text.Pandoc.Templates (renderTemplate)
import Text.Pandoc.Writers.Shared
-
+import Text.Pandoc.Walk (walk)
data WriterState = WriterState { defListMarker :: Text
, orderedListLevel :: Int
@@ -563,8 +563,12 @@ inlineToAsciiDoc opts (Link _ txt (src, _tit)) = do
-- relative: link:downloads/foo.zip[download foo.zip]
-- abs: http://google.cod[Google]
-- or my@email.com[email john]
- let fixCommas = T.replace "," "," -- see #8070
- linktext <- fmap fixCommas <$> inlineListToAsciiDoc opts txt
+ let fixCommas (Str t) =
+ intersperse (RawInline (Format "asciidoc") "&#44;")
+ $ map Str $ T.splitOn "," t -- see #8070
+ fixCommas x = [x]
+
+ linktext <- inlineListToAsciiDoc opts $ walk (concatMap fixCommas) txt
let isRelative = T.all (/= ':') src
let needsPassthrough = "--" `T.isInfixOf` src
let prefix = if isRelative