From e61d1d0da9692b4695c03b7e9f67028d25181ccc Mon Sep 17 00:00:00 2001
From: John MacFarlane <jgm@berkeley.edu>
Date: Thu, 15 Nov 2018 22:29:15 -0800
Subject: Asciidoc writer: Render Spans using `[#id .class]#contents#`.

See #5080.
---
 src/Text/Pandoc/Writers/AsciiDoc.hs | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

(limited to 'src')

diff --git a/src/Text/Pandoc/Writers/AsciiDoc.hs b/src/Text/Pandoc/Writers/AsciiDoc.hs
index 2f92e93ad..6005187d5 100644
--- a/src/Text/Pandoc/Writers/AsciiDoc.hs
+++ b/src/Text/Pandoc/Writers/AsciiDoc.hs
@@ -479,7 +479,11 @@ inlineToAsciiDoc opts (Note [Plain inlines]) = do
   return $ text "footnote:[" <> contents <> "]"
 -- asciidoc can't handle blank lines in notes
 inlineToAsciiDoc _ (Note _) = return "[multiblock footnote omitted]"
-inlineToAsciiDoc opts (Span (ident,_,_) ils) = do
-  let identifier = if null ident then empty else "[[" <> text ident <> "]]"
+inlineToAsciiDoc opts (Span (ident,classes,_) ils) = do
   contents <- inlineListToAsciiDoc opts ils
-  return $ identifier <> contents
+  if null ident && null classes
+     then return contents
+     else do
+       let modifier = brackets $ text $ unwords $
+            [ '#':ident | not (null ident)] ++ map ('.':) classes
+       return $ modifier <> "#" <> contents <> "#"
-- 
cgit v1.2.3