Knitr:siunitx 与 OutDec =“,”发生冲突

Knitr:siunitx 与 OutDec =“,”发生冲突

我遇到了以下问题。

我正在尝试用丹麦语输入一些内容,这意味着我需要一个逗号作为小数点。通常我这样做不会遇到任何问题,我只需设置

<<>>=
   options(OutDec = ",")
@

但是,在我当前的文档中,这引入了一个错误,一开始我很难找到它。具体来说,我会收到以下形式的错误消息! Incomplete \iffalse; all text was ignored after line [x]。经过一番尝试,似乎错误是由与 siunitx 的冲突引起的。设置OutDec = ","似乎将\Sexpr{}in产生的数字括起来\text{},同时将小数点更改为逗号。通常这不是问题,但 \siunitx 似乎不喜欢数学模式和 的组合\text{}。至少,我从以下 MWE 中获得了相关的错误消息:

\documentclass{article}
\usepackage{siunitx}

\begin{document}
    $ \SI{\text{1}}{\meter} $
\end{document}

不过,我宁愿继续能够使用\Sexpr{}\SI{}{}得到正确的小数点。

有想法该怎么解决这个吗?

答案1

为什么不使用以下内容来获取正确的小数点:

\documentclass{article}
\usepackage{siunitx}
\sisetup{output-decimal-marker = {,}}

\begin{document}
$\SI{1.5}{\meter}$
$\SI{1,5}{\meter}$ % ',' works, too
\end{document}

相关内容