mhchem 和 chemformula 中词汇表的使用

mhchem 和 chemformula 中词汇表的使用

我注意到,当我使用glossariespackage with mhchem(在 内部\ce{...})时,缩写总是用斜体表示(这是不希望的),而chemformula一切都按预期工作(\ch{...})。

我做错了什么吗?如何使用两个包获得一致且正确呈现的缩写(我使用 XeLaTeX 和 makeglossaries),而不使用或中的明显\mathrm\text序列?\newacronym\newglossaryentry

MWE 及其呈现的内容:

\documentclass{article}

\usepackage[version=4]{mhchem}

\usepackage[modules=all]{chemmacros}

\usepackage[colorlinks]{hyperref}

\usepackage[acronym]{glossaries}
\makeglossaries

\newacronym{DMSO}{DMSO}{dimethyl sulfoxide}
\newglossaryentry{b.p.}{name={b.p.},description={boiling point}}

\begin{document}
\glsunsetall    

\Gls{DMSO} (\gls{b.p.} 189) is used to obtain \ce{[CrCl2(\gls{DMSO})4]+} (mhchem) | \ch{[CrCl2(\gls{DMSO})4]+} (chemformula)

\printglossaries

\end{document}

在此处输入图片描述

答案1

正如 Nicola 正确指出的那样,这不是和朋友的问题,而是来自包的命令试图解析其参数的\gls问题。\ce{...}mhchem

要转义 中的解析\ce{..},请将 括\gls{DMSO}在一对括号中,例如。有关更多详细信息,请参阅包文档\ce{[CrCl2({\gls{DMSO}})4]+}中的“转义解析,Upright 文本” 。mhchem

完整的 MWE:

\documentclass{article}

\usepackage[version=4]{mhchem}

\usepackage[modules=all]{chemmacros}

\usepackage[colorlinks]{hyperref}

\usepackage[acronym]{glossaries}
\makeglossaries

\newacronym{DMSO}{DMSO}{dimethyl sulfoxide}
\newglossaryentry{b.p.}{name={b.p.},description={boiling point}}

\begin{document}
    \glsunsetall    

    \Gls{DMSO} (\gls{b.p.} 189) is used to obtain \ce{[CrCl2({\gls{DMSO}})4]+} (mhchem) | \ch{[CrCl2(\gls{DMSO})4]+} (chemmacros)

    \printglossaries

\end{document}

二甲基亚砜

相关内容