使用以下 MWE,siunitx 将不会^{-1}
在表达式末尾显示预期内容。
\documentclass{article}
\usepackage[locale = FR]{siunitx}
\sisetup{per-mode=symbol,per-symbol=\text{.}}
\usepackage[french]{babel}
\begin{document}
\si{\kilogram\metre\per\second}
\end{document}
我认为我正确地遵循了文档,但我肯定遗漏了某些内容。欢迎提供任何意见。
谢谢 !
答案1
如果你想要得到的是kg m s^{-1}
,\si{\kilogram\metre\per\second}
你应该不是使用\sisetup{per-mode=symbol,per-symbol=\text{.}}
。实际上,每个模式的默认设置是reciprocal
。如果由于某种原因默认设置未生效,只需发出指令
\sisetup{per-mode=reciprocal}
跑步之前,比如说,\si{\metre\per\second}
(或者,如果你愿意的话,\si{\meter\per\second}
)。
\documentclass{article}
\usepackage[locale = FR]{siunitx}
\usepackage[french]{babel}
\begin{document}
\si{\metre\per\second} % use default setting, which is 'reciprocal'
\quad
\sisetup{per-mode=symbol} % default per-mode symbol is "/"
\si{\metre\per\second}
\quad
\sisetup{per-mode=symbol,per-symbol=\text{.}} % use another character as per-mode symbol
\si{\metre\per\second}
\quad
\sisetup{per-mode=fraction} % switch to fraction mode
\si{\metre\per\second}
\quad
\sisetup{per-mode=reciprocal} % back to the default
\si{\metre\per\second}
\end{document}
附录,由 OP 的后续评论提示:如果兴趣在于将输出渲染为\si{\metre\per\second}
,则m.s{-1}
该per-mode
选项不相关。相反,您可能想要
\sisetup{inter-unit-product=\text{.}}
\documentclass{article}
\usepackage[locale = FR]{siunitx}
\usepackage[french]{babel}
\begin{document}
\si{\meter\per\second} % default inter-unit separator is thin-space
\quad
\sisetup{inter-unit-product=\text{.}}
\si{\meter\per\second}
\quad
\sisetup{inter-unit-product={\,}} % back to default
\si{\meter\per\second}
\end{document}