diff options
author | John MacFarlane <jgm@berkeley.edu> | 2017-07-19 17:30:22 +0200 |
---|---|---|
committer | John MacFarlane <jgm@berkeley.edu> | 2017-07-19 17:30:22 +0200 |
commit | 56f63af3f6776d8f3d6466f928b0c294032444c6 (patch) | |
tree | 545b0d13a3677452b99026433b22382f5d7b60f4 | |
parent | 3267af23f058f65f5d26f2e55b1e8a861837c988 (diff) | |
download | pandoc-56f63af3f6776d8f3d6466f928b0c294032444c6.tar.gz |
LaTeX reader: fixed regression with starred environment names.
Closes #3803.
-rw-r--r-- | src/Text/Pandoc/Readers/LaTeX.hs | 17 | ||||
-rw-r--r-- | test/command/3803.md | 10 |
2 files changed, 13 insertions, 14 deletions
diff --git a/src/Text/Pandoc/Readers/LaTeX.hs b/src/Text/Pandoc/Readers/LaTeX.hs index f5e387429..ab3994770 100644 --- a/src/Text/Pandoc/Readers/LaTeX.hs +++ b/src/Text/Pandoc/Readers/LaTeX.hs @@ -1456,22 +1456,14 @@ begin_ :: PandocMonad m => Text -> LP m () begin_ t = (try $ do controlSeq "begin" spaces - symbol '{' - spaces - Tok _ Word txt <- satisfyTok isWordTok - spaces - symbol '}' + txt <- untokenize <$> braced guard (t == txt)) <?> ("\\begin{" ++ T.unpack t ++ "}") end_ :: PandocMonad m => Text -> LP m () end_ t = (try $ do controlSeq "end" spaces - symbol '{' - spaces - Tok _ Word txt <- satisfyTok isWordTok - spaces - symbol '}' + txt <- untokenize <$> braced guard $ t == txt) <?> ("\\end{" ++ T.unpack t ++ "}") preamble :: PandocMonad m => LP m Blocks @@ -1571,11 +1563,8 @@ newenvironment = do controlSeq "renewenvironment" <|> controlSeq "provideenvironment" optional $ symbol '*' - symbol '{' - spaces - Tok _ Word name <- satisfyTok isWordTok spaces - symbol '}' + name <- untokenize <$> braced spaces numargs <- option 0 $ try bracketedNum spaces diff --git a/test/command/3803.md b/test/command/3803.md new file mode 100644 index 000000000..a2e60359d --- /dev/null +++ b/test/command/3803.md @@ -0,0 +1,10 @@ +``` +% pandoc -f markdown+raw_tex -t latex +\begin{blah*} +*ok* +\end{blah*} +^D +\begin{blah*} +*ok* +\end{blah*} +``` |