Skip to content

Commit

Permalink
Mediawiki reader: allow space around storng/emph delimiters.
Browse files Browse the repository at this point in the history
Closes #6993.
  • Loading branch information
jgm committed Dec 31, 2020
1 parent 0782d58 commit 23f964b
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 6 deletions.
10 changes: 4 additions & 6 deletions src/Text/Pandoc/Readers/MediaWiki.hs
Expand Up @@ -678,19 +678,17 @@ url = do
-- | Parses a list of inlines between start and end delimiters.
inlinesBetween :: (PandocMonad m, Show b) => MWParser m a -> MWParser m b -> MWParser m Inlines
inlinesBetween start end =
trimInlines . mconcat <$> try (start >> many1Till inner end)
where inner = innerSpace <|> (notFollowedBy' (() <$ whitespace) >> inline)
innerSpace = try $ whitespace <* notFollowedBy' end
trimInlines . mconcat <$> try (start >> many1Till inline end)

emph :: PandocMonad m => MWParser m Inlines
emph = B.emph <$> nested (inlinesBetween start end)
where start = sym "''" >> lookAhead nonspaceChar
where start = sym "''"
end = try $ notFollowedBy' (() <$ strong) >> sym "''"

strong :: PandocMonad m => MWParser m Inlines
strong = B.strong <$> nested (inlinesBetween start end)
where start = sym "'''" >> lookAhead nonspaceChar
end = try $ sym "'''"
where start = sym "'''"
end = sym "'''"

doubleQuotes :: PandocMonad m => MWParser m Inlines
doubleQuotes = do
Expand Down
21 changes: 21 additions & 0 deletions test/command/6993.md
@@ -0,0 +1,21 @@
```
% pandoc -f mediawiki -t native
'''Should be bold '''
^D
[Para [Strong [Str "Should",Space,Str "be",Space,Str "bold"]]]
```

```
% pandoc -f mediawiki -t native
''' Should be bold'''
^D
[Para [Strong [Str "Should",Space,Str "be",Space,Str "bold"]]]
```

```
% pandoc -f mediawiki -t native
'' Should be emph ''
^D
[Para [Emph [Str "Should",Space,Str "be",Space,Str "emph"]]]
```

0 comments on commit 23f964b

Please sign in to comment.