RST reader: handle escaped colons in reference definitions.

Cloess #7568.
This commit is contained in:
John MacFarlane 2021-09-13 22:57:08 -07:00
parent b34dc28926
commit a3162d341b
2 changed files with 13 additions and 1 deletions

View file

@ -1155,10 +1155,11 @@ referenceNames = do
let rn = try $ do
string ".. _"
ref <- quotedReferenceName
<|> manyChar ( noneOf ":\n"
<|> manyChar ( noneOf "\\:\n"
<|> try (char '\n' <*
string " " <*
notFollowedBy blankline)
<|> try (char '\\' *> char ':')
<|> try (char ':' <* lookAhead alphaNum)
)
char ':'

11
test/command/7568.md Normal file
View file

@ -0,0 +1,11 @@
```
% pandoc -f rst
While `Labyrinth Lord: Revised Edition`_ (LLRE; PDF and POD) has been
criticized for not being a completely faithful retro-clone of the
Moldvay/Cook/Marsh Basic/Expert D&D rules (B/X), I think it still
holds a useful spot.
.. _Labyrinth Lord\: Revised Edition: https://www.drivethrurpg.com/product/64332/Labyrinth-Lord-Revised-Edition
^D
<p>While <a href="https://www.drivethrurpg.com/product/64332/Labyrinth-Lord-Revised-Edition">Labyrinth Lord: Revised Edition</a> (LLRE; PDF and POD) has been criticized for not being a completely faithful retro-clone of the Moldvay/Cook/Marsh Basic/Expert D&amp;D rules (B/X), I think it still holds a useful spot.</p>
```