|
|
@ -88,9 +88,9 @@ leftmostLongestParse parser input =
|
|
|
|
Nothing -> (mempty, mempty)
|
|
|
|
Nothing -> (mempty, mempty)
|
|
|
|
Just x -> x
|
|
|
|
Just x -> x
|
|
|
|
|
|
|
|
|
|
|
|
specialChars = "\\#*_[\n`"
|
|
|
|
specialChars = "\n\\`*_{}[]()<>#+|"
|
|
|
|
|
|
|
|
|
|
|
|
escapableChars = '~' : specialChars
|
|
|
|
escapableChars = "-~!." ++ specialChars
|
|
|
|
|
|
|
|
|
|
|
|
-- Makes a parser greedy. Instead of returning all possible parses, only the longest one is returned.
|
|
|
|
-- Makes a parser greedy. Instead of returning all possible parses, only the longest one is returned.
|
|
|
|
greedyParse :: ReadP a -> ReadP [a]
|
|
|
|
greedyParse :: ReadP a -> ReadP [a]
|
|
|
|