你好,我正在尝试编写一些 NMR 数据,并希望能够使一些格式的设置更简单一些。
看看这个链接这里我能够将耦合常数更改为斜体,但我认为这可能是个混乱的解决方案,因为它似乎对我的字体以及 \emph 命令如何与标签配合使用产生了一些影响\ce
。
例如,在新的 [ NMR2
] 环境中,我希望能够识别单个质子信号,例如。\ce{CH2C\emp{H}3}
当我试图提出 MWE 时,这似乎工作正常,但一旦我尝试在实际文档中使用它,它就无法工作。
\documentclass[11 pt]{report}
\usepackage[T1]{fontenc}
\usepackage{bera}
\usepackage[scaled]{berasans}
\usepackage[scaled]{beramono}
\usepackage{textcomp}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[left=1in, right=1in, top=0.75in, bottom=0.5in, includeheadfoot, headheight=13.6pt]{geometry}
\usepackage{setspace}
\usepackage[compact]{titlesec}
\usepackage{balance}
\usepackage{lastpage}
\usepackage[toc, page, header]{appendix}
\usepackage{fancyhdr}
\usepackage[plain]{fancyref}
\usepackage{achemso}
\usepackage[version=3]{mhchem}
\usepackage[runs=2]{auto-pst-pdf}
\usepackage{chemstyle}
\usepackage{chemnum}
%%
%This Section Taken from linked%
\usepackage{regexpatch,environ}
\NewEnviron{NMR2}{%
\xpatchcmd*\BODY{J}{\textit{J}}{}{}%
\BODY}
%%
\usepackage{graphicx}
\usepackage{mathptmx} \usepackage[scaled=.95]{helvet} \usepackage{courier}
\begin{document}
\begin{NMR2}
\ce{^1H} (\SI{600}{\MHz}; \ce{DMSO-d6}) 4.14 (2H, q, J 7.1 Hz, \ce{C\emph{H}2CH3}), 1.22 (3H, t, J 7.1 Hz, \ce{CH2CH3}).
\end{NMR2}
\end{document}
有没有更好的方法来实现我想要的效果?
以下是错误消息:
? 失控的论点? !段落在 \emph 完成之前结束。 \par l.45 \end{NMR2}
? ! 缺少 $ 插入。$ l.45 \end{NMR2}
? ! 缺失 } 插入。 } l.45 \end{NMR2}
? ! 缺失 } 插入。 } l.45 \end{NMR2}
? ! 缺失 } 插入。 } l.45 \end{NMR2}
? ! 未定义控制序列。\mhchem@cf@i ...tect #1\else \if \mhchem@cf@state e\mhchem@cf@sup =\expandaf... l.45 \end{NMR2}
答案1
将 .tex 文件复制到新目录中似乎解决了问题。看来我有几个额外的 .sty 文件可能导致了这个问题。不太确定是哪一个,但现在编译得很好。
谢谢。