git.iko.soy/typeable/pandoc
on master help sign in
Muse reader: don't allow digits after closing marker in lightweight markup

This change makes reader more compatible with Emacs Muse

commit81131ef5d19052948b4ac12a727e2ceef8a98186 authorAlexander Krotov <ilabdsf@gmail.com> dateSun 12 Aug 2018, 21:20 (8 years ago) parentacf6df1
2 files changed+6−2
src/Text/Pandoc/Readers/Muse.hs+2−2 test/Tests/Readers/Muse.hs+4
src/Text/Pandoc/Readers/Muse.hs+2−2
@@ -43,7 +43,7 @@ import Prelude
4343import Control.Monad
4444import Control.Monad.Except (throwError)
4545import Data.Bifunctor
46−import Data.Char (isLetter)
46+import Data.Char (isLetter, isDigit)
4747import Data.Default
4848import Data.List (intercalate)
4949import Data.List.Split (splitOn)
@@ -841,7 +841,7 @@ enclosedInlines :: (PandocMonad m, Show a, Show b)
841841 -> MuseParser m b
842842 -> MuseParser m (F Inlines)
843843enclosedInlines start end = try $
844− trimInlinesF . mconcat <$> (enclosed (atStart start) end inline <* notFollowedBy (satisfy isLetter))
844+ trimInlinesF . mconcat <$> (enclosed (atStart start) end inline <* notFollowedBy (satisfy ((||) <$> isLetter <*> isDigit)))
845845
846846-- | Parse an inline tag, such as @\<em>@ and @\<strong>@.
847847inlineTag :: PandocMonad m
test/Tests/Readers/Muse.hs+4
@@ -74,6 +74,10 @@ tests =
7474 "Foo x*bar* baz" =?>
7575 para "Foo x*bar* baz"
7676
77+ , "Digit after closing *" =:
78+ "Foo *bar*0 baz" =?>
79+ para "Foo *bar*0 baz"
80+
7781 , "Emphasis tag" =:
7882 "<em>Foo bar</em>" =?>
7983 para (emph . spcSep $ ["Foo", "bar"])