HTML writer: Avoid two class attributes when adding 'uri' class.

Closes #3716.
This commit is contained in:
John MacFarlane 2017-06-01 18:41:54 +02:00
parent 0cf6511f16
commit 8218bdb95c
2 changed files with 13 additions and 7 deletions

View file

@ -973,7 +973,7 @@ inlineToHtml opts inline = do
(Link attr txt (s,_)) | "mailto:" `isPrefixOf` s -> do
linkText <- inlineListToHtml opts txt
lift $ obfuscateLink opts attr linkText s
(Link attr txt (s,tit)) -> do
(Link (ident,classes,kvs) txt (s,tit)) -> do
linkText <- inlineListToHtml opts txt
slideVariant <- gets stSlideVariant
let s' = case s of
@ -983,13 +983,13 @@ inlineToHtml opts inline = do
in '#' : prefix ++ xs
_ -> s
let link = H.a ! A.href (toValue s') $ linkText
let link' = if txt == [Str (unEscapeString s)]
then link ! A.class_ "uri"
else link
let link'' = addAttrs opts attr link'
let attr = if txt == [Str (unEscapeString s)]
then (ident, "uri" : classes, kvs)
else (ident, classes, kvs)
let link' = addAttrs opts attr link
return $ if null tit
then link''
else link'' ! A.title (toValue tit)
then link'
else link' ! A.title (toValue tit)
(Image attr txt (s,tit)) | treatAsImage s -> do
let alternate' = stringify txt
slideVariant <- gets stSlideVariant

6
test/command/3716.md Normal file
View file

@ -0,0 +1,6 @@
```
% pandoc
<http://example.com>{.foo}
^D
<p><a href="http://example.com" class="uri foo">http://example.com</a></p>
```