Der Befehl \cee (aus dem mhchem-Paket) erlaubt kein \\

Der Befehl \cee (aus dem mhchem-Paket) erlaubt kein \\

Wenn Sie \ceeden Befehl (aus dem mhchem-Paket) in der Align-Umgebung verwenden, \\[10pt]funktioniert es nicht. In der Align-Umgebung ohne funktioniert es \cee. Gibt es eine Problemumgehung?

hier ist ein MWE:

\documentclass{article} 
\usepackage{amsmath}
\usepackage{mhchem}

%with \cee command
\begin{document}
\begin{align}
\cee{
A &-> B \\[10pt] %"[10pt]" is printed, no vertical adjustment
A &-> B 
}
\end{align}

%without \cee command
\begin{align}
A &\rightarrow B \\[10pt] %vertical adjustment works
A &\rightarrow B 
\end{align}

\end{document}

Drucke:

Bildbeschreibung hier eingeben

Antwort1

Bearbeiten:mhchem Version 3.16 enthält den unten gezeigten Fix. Das Update wird in einigen Tagen verfügbar sein.

Bildbeschreibung hier eingeben

(Diese Neudefinition erfordert die aktuelle Version von mhchem, nicht die in Texlive 2012)

\documentclass{article} 
\usepackage{amsmath}
\usepackage{mhchem}

\makeatletter
\def\mhchem@cee@i#1\\#2#3\mhchem@ENDEND{%
  \ifx\mhchem@END#2%
    \mhchem@cee@ii#1&\mhchem@END\mhchem@ENDEND%
  \else%
    \mhchem@cee@ii#1&\mhchem@END\mhchem@ENDEND%
    \g@addto@macro\mhchem@ce@out{\\}%
   \@ifnextchar[\mhchem@cee@ibrk
\mhchem@cee@i#2#3\mhchem@ENDEND%
  \fi%
}

\def\mhchem@cee@ibrk[#1]{%
 \g@addto@macro\mhchem@ce@out{[#1]}\mhchem@cee@i}
\makeatother

%with \cee command
\begin{document}

\begin{align}
\cee{
A &-> B \\[10pt] %"[10pt]" is printed, no vertical adjustment
A &-> B 
}
\end{align}

%without \cee command
\begin{align}
A &\rightarrow B \\[10pt] %vertical adjustment works
A &\rightarrow B 
\end{align}

\end{document}

verwandte Informationen