有一个作用于环境体的命令

有一个作用于环境体的命令

我需要把这个

\begin{FOO}
my little pony
\end{FOO}

进入这个

\bar{my little pony}

我尝试过这个:

\newenvironment{FOO}{\bar}{}

但这似乎仅\bar适用于第一个字符,如下所示:

\bar{m}y little pony

答案1

\color(诚​​然,没有这个也可以实现)的例子,但让我们假设\mycmd它对于真实情况来说更为复杂,而不是一个玩具“理论”;-))

environ使用包及其\NewEnviron命令和来收集环境主体是最简单的\BODY

\documentclass{article}

\usepackage{xcolor}
\usepackage{environ}
\usepackage{blindtext}

\newcommand{\mycmd}[1]{%
  \color{blue}#1%
}

\NewEnviron{FOO}{\mycmd{\BODY}}{}

\begin{document}
\begin{FOO}
my little pony

\blindtext[2]
\end{FOO}

\end{document}

更复杂的例子可能必须使用\expandafterbefore \BODY

在此处输入图片描述

相关内容