LaTeX:\newenvironment只有一个可选的arg(没有强制性)

Eri*_* 38 2 latex class option newenvironment


我尝试在一个只接受可选参数的类中设置一个新环境,或者没有.

这将使用这样:

\begin{myEnv}          -->  "Label:"  
Run Code Online (Sandbox Code Playgroud)

要么

\begin{myEnv}[myLabel] -->  "Label: myLabel"
Run Code Online (Sandbox Code Playgroud)

我尝试用基本宏定义这个环境.我宁愿不使用xparse包.

我找到了几个带有可选参数和强制参数的\newenvironment示例.但我不需要强制性的论点!

有没有办法用\newenvironment或\ def宏来做到这一点?

Phi*_*ipp 6

没问题,只需用一个参数声明环境,并使其成为可选:

\documentclass{minimal}
\newenvironment*{myEnv}[1][]{%
  Label: #1%
  \par
  \ignorespaces
}{%
  \par
  end%
  \par
  \ignorespacesafterend
}
\begin{document}
\begin{myEnv}
  abc
\end{myEnv}
\begin{myEnv}[myLabel]
  abc
\end{myEnv}
\end{document}
Run Code Online (Sandbox Code Playgroud)