Skip to content

Commit 8cd6c3c

Browse files
committed
imp: Add ' as possible digit separator
It is used for Swiss Francs: CHF 1'000.
1 parent c54fb4d commit 8cd6c3c

1 file changed

Lines changed: 3 additions & 1 deletion

File tree

hledger-lib/Hledger/Read/Common.hs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -995,6 +995,8 @@ disambiguateNumber msuggestedStyle (AmbiguousNumber grp1 sep grp2) =
995995
-- Left (AmbiguousNumber "1" ',' "000")
996996
-- >>> parseTest rawnumberp "1 000"
997997
-- Right (WithSeparators ' ' ["1","000"] Nothing)
998+
-- >>> parseTest rawnumberp "1'000"
999+
-- Right (WithSeparators '\'' ["1","000"] Nothing)
9981000
--
9991001
rawnumberp :: TextParser m (Either AmbiguousNumber RawNumber)
10001002
rawnumberp = label "number" $ do
@@ -1060,7 +1062,7 @@ rawnumberp = label "number" $ do
10601062
pure $ NoSeparators grp1 (Just (decPt, mempty))
10611063

10621064
isDigitSeparatorChar :: Char -> Bool
1063-
isDigitSeparatorChar c = isDecimalMark c || c == ' '
1065+
isDigitSeparatorChar c = isDecimalMark c || c == ' ' || c == '\''
10641066

10651067
-- | Some kinds of number literal we might parse.
10661068
data RawNumber

0 commit comments

Comments
 (0)