aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn MacFarlane <jgm@berkeley.edu>2020-11-16 16:36:16 -0800
committerJohn MacFarlane <jgm@berkeley.edu>2020-11-16 16:36:16 -0800
commit5271c6b3fbdc72d6a3e0405718f7c98cdf47eda0 (patch)
tree9744b84668ee382d25e28b4412f1f77831451ecd
parent734b4c26a990a334b2bbe352ba34257ebb2a6fcd (diff)
downloadpandoc-5271c6b3fbdc72d6a3e0405718f7c98cdf47eda0.tar.gz
Improve fix to siunitx numbers with minus.
- use real minus sign - use tests contributed by Igor Pashev.
-rw-r--r--src/Text/Pandoc/Readers/LaTeX/SIunitx.hs2
-rw-r--r--test/command/6844.md27
-rw-r--r--test/command/siunitx-negative-numbers.md15
3 files changed, 28 insertions, 16 deletions
diff --git a/src/Text/Pandoc/Readers/LaTeX/SIunitx.hs b/src/Text/Pandoc/Readers/LaTeX/SIunitx.hs
index d16dec580..db9c276e7 100644
--- a/src/Text/Pandoc/Readers/LaTeX/SIunitx.hs
+++ b/src/Text/Pandoc/Readers/LaTeX/SIunitx.hs
@@ -71,7 +71,7 @@ parseNumPart =
parseSpace
where
parseDecimalNum = do
- pref <- option mempty $ (mempty <$ char '+') <|> ("-" <$ char '-')
+ pref <- option mempty $ (mempty <$ char '+') <|> ("\x2212" <$ char '-')
basenum <- (pref <>) . T.pack
<$> many1 (satisfy (\c -> isDigit c || c == '.'))
uncertainty <- option mempty $ T.pack <$> parseParens
diff --git a/test/command/6844.md b/test/command/6844.md
new file mode 100644
index 000000000..0431cfed8
--- /dev/null
+++ b/test/command/6844.md
@@ -0,0 +1,27 @@
+Negative numbers with siunitx
+
+```
+% pandoc -f latex -t native
+\SI{123}{\celsius}
+
+^D
+[Para [Str "123\160\176C"]]
+```
+
+```
+% pandoc -f latex -t native
+\SI{-123}{\celsius}
+
+^D
+[Para [Str "\8722\&123\160\176C"]]
+```
+
+```
+% pandoc -f latex -t native
+\SI{+123}{\celsius}
+
+^D
+[Para [Str "123\160\176C"]]
+```
+
+
diff --git a/test/command/siunitx-negative-numbers.md b/test/command/siunitx-negative-numbers.md
deleted file mode 100644
index 56cdbe31d..000000000
--- a/test/command/siunitx-negative-numbers.md
+++ /dev/null
@@ -1,15 +0,0 @@
-```
-% pandoc -f latex
-\SI{+33.3}{\m}
-
-\num{+5}
-
-\SI{-33.3}{\m}
-
-\num{-33}
-^D
-<p>33.3 m</p>
-<p>5</p>
-<p>-33.3 m</p>
-<p>-33</p>
-```