diff options
author | Albert Krewinkel <albert@zeitkraut.de> | 2017-01-05 23:24:27 +0100 |
---|---|---|
committer | Albert Krewinkel <albert@zeitkraut.de> | 2017-01-05 23:30:46 +0100 |
commit | 21e6ca197694a8f65bd2717dc441ea99f3f20312 (patch) | |
tree | 41f0485f2df6170c195ebe0a40068c2fa1ea41b7 | |
parent | f2e3e756f81378015a3d1815502f2b94361dce52 (diff) | |
download | pandoc-21e6ca197694a8f65bd2717dc441ea99f3f20312.tar.gz |
Org reader: ensure emphasis markup can be nested
Nested emphasis markup (e.g. `/*strong and emphasized*/`) was
interpreted incorrectly in that the inner markup was not recognized.
-rw-r--r-- | src/Text/Pandoc/Readers/Org/Inlines.hs | 3 | ||||
-rw-r--r-- | tests/Tests/Readers/Org.hs | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/Text/Pandoc/Readers/Org/Inlines.hs b/src/Text/Pandoc/Readers/Org/Inlines.hs index 97b36b388..5f3df8d3e 100644 --- a/src/Text/Pandoc/Readers/Org/Inlines.hs +++ b/src/Text/Pandoc/Readers/Org/Inlines.hs @@ -647,6 +647,9 @@ emphasisStart c = try $ do char c lookAhead (noneOf emphasisForbiddenBorderChars) pushToInlineCharStack c + -- nested inlines are allowed, so mark this position as one which might be + -- followed by another inline. + updateLastPreCharPos return c -- | Parses the closing character of emphasis diff --git a/tests/Tests/Readers/Org.hs b/tests/Tests/Readers/Org.hs index 6b07784b7..4462d81cc 100644 --- a/tests/Tests/Readers/Org.hs +++ b/tests/Tests/Readers/Org.hs @@ -47,6 +47,10 @@ tests = "/*strength*/" =?> para (emph . strong $ "strength") + , "Emphasized Strong preceded by space" =: + " */super/*" =?> + para (strong . emph $ "super") + , "Strikeout" =: "+Kill Bill+" =?> para (strikeout . spcSep $ [ "Kill", "Bill" ]) |