こんにちは。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 ファイルがいくつかあったようです。どれが原因だったのかはよくわかりませんが、今は問題なくコンパイルできます。
ありがとう。