对常见有机基团/自由基/取代基进行分类的正确(和有效)方法是什么?我-Pr,n-Bu 或吨-Bu 用chemformula
(主要关注的是前缀)?
到目前为止我尝试了以下操作:
\documentclass[a4paper]{report}
\usepackage[modules={all}]{chemmacros}
\begin{document}
Tetra-\textit{n}-butylammonium cation:
\begin{enumerate}
\item \ch{\textit{n-}Bu4N+}
\item \ch{ $n\text{-}$ Bu4N+}
\item \ch{ "\textit{n-}" Bu4N+}
\end{enumerate}
\end{document}
第三个版本看起来最好,但我觉得我的代码太麻烦了。我只在手册中找到了\tert
命令,它产生了chemmacros
叔,并且用于名称,而不是公式。我觉得一定有更优雅(且语义正确)的方式来输入这个。
答案1
为了轻松访问命名法模块中尚未构建的描述符(化学命名法中的前缀)chemmacros
,您可以定义自己的命令,如下面的 MWE 所示:
\documentclass[a4paper]{report}
\usepackage[modules={all}]{chemmacros}
\newcommand{\nn}{\textit{n-}}
\begin{document}
Tetra-\textit{n}-butylammonium cation: \ch{ "\textit{n-}" Bu4N+}
\iupac{Tetra-\nn butylammonium cation}: \ch{\nn Bu4N+}
\end{document}
正如 clemens 在评论中提到的,还有一个chemstyle
提供命令\nPr
、\iPr
、\nBu
、\iBu
、\sBu
的包\tBu
。
答案2
因为无论如何都需要定义这些命令,所以我认为将它们定义为缩写并使用包可能也很有用glossaries
。根据ACS 风格指南,有机化学中的常见基团不一定必须在文本中定义,但可以考虑稍后添加自己的缩写基团。然后建立自己的词汇表会非常有益:
\documentclass[a4paper]{report}
\usepackage[modules={all}]{chemmacros}
\usepackage[colorlinks]{hyperref}
\usepackage[acronym]{glossaries}
\newacronym{nPr}{\textit{n}-Pr}{\textit{n}-propyl}
\newacronym{iPr}{\textit{i}-Pr}{isopropyl}
\newacronym{nBu}{\textit{n}-Bu}{\textit{n}-butyl}
\newacronym{iBu}{\textit{i}-Bu}{isobutyl}
\newacronym{sBu}{\textit{s}-Bu}{\textit{sec}-butyl}
\newacronym{tBu}{\textit{t}-Bu}{\textit{tert}-butyl}
\makeglossaries
\begin{document}
\glsunsetall
Common groups in organic chemistry are: \gls{nPr}, \gls{iPr}, \gls{nBu}, \gls{iBu}, \gls{sBu}, \gls{tBu}.
Tetra-\textit{n}-butylammonium cation: \ch{\gls{nBu}4N+}.
\printglossaries
\end{document}