为什么不能在“xparse”中插入“\textrm”?

为什么不能在“xparse”中插入“\textrm”?

我使用 Xelatex 在 Texworks 中测试了以下代码:

\documentclass{article}
\usepackage{siunitx}
\usepackage{xparse}
\ProvideDocumentCommand\pH{\textrm{pH}}
\begin{document}
\pH~\num{5}.
\end{document}

错误是: ! LaTeX cmd Error: Invalid argument type '\textrm ' in command '\pH'.

那么问题出在哪里?谢谢。

答案1

您需要{}指定该命令不带参数

\documentclass{article}
\usepackage{siunitx}
%\usepackage{xparse}% only needed with old latex releases
\ProvideDocumentCommand\pH{}{\textrm{pH}}
\begin{document}
\pH~\num{5}.
\end{document}

相关内容