使用 chemmacros 根据 IUPAC 对(形式)加成化合物进行排版

使用 chemmacros 根据 IUPAC 对(形式)加成化合物进行排版

我对根据 IUPAC 输出的加成化合物有疑问。像 CuSO4·5H2O 这样的化合物在点和公式之间不应该有空格 [1,第 56 页]:

IR-4.2.4(形式)加成化合物的公式

加成化合物和可以正式视为加成化合物的化合物(包括笼状物和复盐)的化学式采用特殊格式。成分的比例用阿拉伯数字表示在成分化学式之前,成分化学式之间用中心点隔开。

例子

我如何在反应方程式中做到这一点?

\documentclass[12pt]{article}
\usepackage[german]{babel}
\usepackage{chemmacros}

\begin{document}

\ch{CuSO4 -> [][5 H2O] CuSO4*5H2O} 
    
\end{document}

不适用于方程式。对于简单公式,可以使用以下方法删除空格:

\ch{CuSO4}$\cdot$\ch{5H2O} 

是否有可能像 IUPAC 推荐的那样获得整个事物?

参考

  1. IUPAC。无机化学命名法,IUPAC 建议 2005(《红皮书》)第 1 版;Connelly, NG、Damhus, T.、Hartshorn, RM、Hutton, AT 编;RSC 出版社:英国剑桥,2005.国际标准书号 978-0-85404-438-2。

答案1

首先:在输入中留出更多空格。手册\ch中描述了的详细语法chemformula。特别是化学计量因子和公式需要用空格包围(箭头的可选参数也是如此),即使它们是水合物等较大公式的一部分。这在手册的第 6.1 节中显示chemformula

在此处输入图片描述

您的示例的正确语法如下:

\documentclass[12pt]{article}
\usepackage[ngerman]{babel}
\usepackage{chemmacros}

\begin{document}

\ch{CuSO4 ->[ 5 H2O ] CuSO4 * 5 H2O}

\end{document}

在此处输入图片描述

如果您现在想调整点周围的空间,您可以将选项设置adduct-space为适合您的值。IUPAC红色的书确实,两个点周围都没有空格化合物和化学计量因子之间没有空格,这意味着adduct-space和都stoich-space需要设置为0pt才能获得相同的输出:

\documentclass[12pt]{article}
\usepackage[ngerman]{babel}
\usepackage{chemmacros}
\chemsetup{
  formula = chemformula ,
  chemformula/adduct-space = 0pt ,
  chemformula/stoich-space = 0pt
}

\begin{document}

\ch{CuSO4 ->[ 5 H2O ] CuSO4 * 5 H2O} 

\end{document}

在此处输入图片描述

不过,我并不确信红色的书在这里提出印刷建议,因为本章仅描述了命名加成化合物。绿皮书另一方面,有很多排版建议。虽然没有明确提到,但使用空格将化合物与化学计量因子分开,这意味着空格实际上遵循 IUPAC 建议。


还请注意,你应该离开箭头和其参数之间的空格。输入的排版结果清楚地显示了这一点:

\ch{CuSO4 -> [][5 H20] CuSO4*5H2O}

在此处输入图片描述

相关内容