Man reader: don't parse \[ul] as unicode escape.
This commit is contained in:
parent
7a111d2d33
commit
0327226d4c
2 changed files with 4 additions and 2 deletions
|
@ -204,9 +204,11 @@ escapeLexer = try $ do
|
|||
<|> charCode `sepBy1` (many1 Parsec.space)
|
||||
) <* char ']'
|
||||
|
||||
ucharCode = do
|
||||
ucharCode = try $ do
|
||||
char 'u'
|
||||
cs <- many1 (satisfy isHexDigit)
|
||||
let lcs = length cs
|
||||
guard $ lcs >= 4 && lcs <= 6
|
||||
case chr <$> safeRead ('0':'x':cs) of
|
||||
Nothing -> escUnknown ("\\[u" ++ cs ++ "]") '\xFFFD'
|
||||
Just c -> return c
|
||||
|
|
|
@ -76,7 +76,7 @@ tests = [
|
|||
, "two letter escapes" =:
|
||||
"\\(oA\\(~O" =?> (para $ text "ÅÕ")
|
||||
, "bracketed escapes" =:
|
||||
"\\[oA]\\[~O]\\[Do]\\[Ye]\\[product]" =?> (para $ text "ÅÕ$¥∏")
|
||||
"\\[oA]\\[~O]\\[Do]\\[Ye]\\[product]\\[ul]" =?> (para $ text "ÅÕ$¥∏_")
|
||||
, "unicode escapes" =:
|
||||
"\\[u2020]" =?> (para $ text "†")
|
||||
, "unicode escapes (combined)" =:
|
||||
|
|
Loading…
Add table
Reference in a new issue