diff options
| author | John MacFarlane <jgm@berkeley.edu> | 2023-11-05 21:27:03 -0800 |
|---|---|---|
| committer | John MacFarlane <jgm@berkeley.edu> | 2023-11-05 21:27:03 -0800 |
| commit | 76cd115d3bccc77df527b048ae7cad111e477d3d (patch) | |
| tree | 6822dfd19ab4a6d9adb43992afba96b642cdb9fc /src | |
| parent | 6fdebc4afd37227f6450f3c28ef7019c1f2e2be8 (diff) | |
Markdown reader: make attributes work with reference links.
Closes #9171.
Diffstat (limited to 'src')
| -rw-r--r-- | src/Text/Pandoc/Readers/Markdown.hs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/Text/Pandoc/Readers/Markdown.hs b/src/Text/Pandoc/Readers/Markdown.hs index 402893897..9f45154ed 100644 --- a/src/Text/Pandoc/Readers/Markdown.hs +++ b/src/Text/Pandoc/Readers/Markdown.hs @@ -1928,6 +1928,7 @@ referenceLink constructor (lab, raw) = do <|> try ((guardDisabled Ext_spaced_reference_links <|> spnl) >> reference) when (raw' == "") $ guardEnabled Ext_shortcut_reference_links + !attr <- option nullAttr $ guardEnabled Ext_link_attributes >> attributes let !labIsRef = raw' == "" || raw' == "[]" let (exclam, rawsuffix) = case T.uncons raw of @@ -1956,11 +1957,11 @@ referenceLink constructor (lab, raw) = do then do headerKeys <- asksF stateHeaderKeys case M.lookup key headerKeys of - Just ((src, tit), _) -> constructor nullAttr src tit <$> lab + Just ((src, tit), _) -> constructor attr src tit <$> lab Nothing -> makeFallback else makeFallback - Just ((src,tit), attr) -> - constructor attr src tit <$> lab + Just ((src,tit), defattr) -> + constructor (combineAttr attr defattr) src tit <$> lab dropBrackets :: Text -> Text dropBrackets = dropRB . dropLB |
