我想用德语为主的文本写出化学公式,其中包含少量俄语单词。为此,我使用babel
和chemformula
,但它们产生了严重的冲突。我的 MWE:
\documentclass{report}
\usepackage[T2A,T1]{fontenc}
\usepackage[russian,ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{chemformula}
\begin{document}
Deutscher Text
\selectlanguage{russian}{русский текст}
\ch{H2O}
\end{document}
我收到以下错误消息:
[path]/chemformula.sty.1168:"xparse/command-already-defined"! 有关更多信息,请参阅 LaTeX3 文档。{ \chemformula_ch:nn { #1 } { #2 } }
chemformula.sty 的第 1167-8 行包含以下内容:
\NewDocumentCommand \ch { O{}m }
{ \chemformula_ch:nn { #1 } { #2 } }
有什么方法可以把这些包合并起来吗?
答案1
俄罗斯模块babel
定义\ch
了“双曲余弦”算子。
\documentclass{report}
\usepackage[T2A,T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[russian,ngerman]{babel}
%%% save the command for the hyperbolic cosine
\let\Ch\ch
%%% undefine \ch
\let\ch\relax
%%%
\usepackage{chemformula}
\begin{document}
Deutscher Text
\selectlanguage{russian}{русский текст}
\ch{H2O}
\end{document}
如果需要“ch”表示双曲余弦,请输入\Ch