From dcb0b02aa391135d34da2a9c76b0683c19b521b3 Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Fri, 25 Sep 2015 23:01:34 -0700 Subject: Markdown reader: handle 'id' and 'class' in parsing key/value attrs. # Header {id="myid" class="foo bar"} is now equivalent to # Header {#myid .foo .bar} Closes #2396. --- src/Text/Pandoc/Readers/Markdown.hs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/Text/Pandoc') diff --git a/src/Text/Pandoc/Readers/Markdown.hs b/src/Text/Pandoc/Readers/Markdown.hs index 80a13b3bd..b5d15c633 100644 --- a/src/Text/Pandoc/Readers/Markdown.hs +++ b/src/Text/Pandoc/Readers/Markdown.hs @@ -639,7 +639,11 @@ keyValAttr = try $ do val <- enclosed (char '"') (char '"') litChar <|> enclosed (char '\'') (char '\'') litChar <|> many (escapedChar' <|> noneOf " \t\n\r}") - return $ \(id',cs,kvs) -> (id',cs,kvs ++ [(key,val)]) + return $ \(id',cs,kvs) -> + case key of + "id" -> (val,cs,kvs) + "class" -> (id',cs ++ words val,kvs) + _ -> (id',cs,kvs ++ [(key,val)]) specialAttr :: MarkdownParser (Attr -> Attr) specialAttr = do -- cgit v1.2.3