新环境错误(问题)

新环境错误(问题)

我正在尝试为我的文档创建一个“自定义”环境,这就是我得到的

\documentclass[12pt]{article}
\usepackage{color}
\definecolor{01}{RGB}{0,95,200}
\newenvironment{custom}[2]{{\medskip\noindent\bf\color{01} #1}\\{\it #2 }}{}

\begin{document}

\begin{custom}{Observation}
$x\in Z(G)$ si y solo si $xy=yx$, para todo $y\in G$ si y solo si $N(x)=G$, si y solo si \[\frac{o(G)}{o(N(x))}=1=|[x]|.\]
\end{custom}

\end{document}

这没有任何问题,但在这种情况下,由于文本以“$”符号开头,我收到错误,

多余的 },或者忘记了 $。[$] 插入了缺失的 }。[\end{custom}]

我可以通过将所有内容放在 {} 上来避免这种情况

\begin{custom}{a}
{b}
\end{custom}

但我想知道是否有一种方法可以修改它\newenvironment以使其工作而无需进行任何更改,提前致谢。

答案1

据我了解,环境主体文本应该用 排版\it(当然用 更好\itshape),所以它不是#2这里的第二个参数,没有必要。

在 OP 给出的例子中,没有给出第二个参数,因此 LaTeX 尝试$从主体中读取,从而导致错误。

使用\bfseriesInstead of\bf\textcolor{01}{#1}Rather than \color{01} #1

\documentclass[12pt]{article}
\usepackage{color}
\definecolor{01}{RGB}{0,95,200}
\newenvironment{custom}[1]{{\medskip\noindent\bfseries\textcolor{01}{#1}}%

\itshape  }{%End code -- empty here
}

\begin{document}

\begin{custom}{Observation}
$x\in Z(G)$ si y solo si $xy=yx$, para todo $y\in G$ si y solo si $N(x)=G$, si y solo si \[\frac{o(G)}{o(N(x))}=1=|[x]|.\]
\end{custom}

\end{document}

在此处输入图片描述

相关内容