结束 \verbatim 命令

结束 \verbatim 命令

逐字环境用于显示 LaTeX 命令而不是执行它们。

要以在线方式显示单个命令,\verb||可以使用该命令。

要显示整个块,我们可以使用\begin{verbatim}打开环境和\end{verbatim}关闭它。

但我也遇到过\verbatim这种情况。有了它,我们也可以输入\begin{verbatim}并将\end{verbatim}它们显示在我们的文档中,而无需启动和结束它们的环境。问题是,我仍然没有找到如何终止它。

我知道有更好的方法,也许\verbatim根本不应该使用。但我只是想了解它的工作原理,以便更多地了解 LaTeX。调用它后,我如何返回到编译 LaTeX 代码、使用正常字体和自动换行的正常环境?

答案1

verbatim是一个非常特殊的环境,寻找精确的细绳 \end{verbatim}结束它。与其他 latex 环境不同,您不能使用verbatim\env ...\endenv代替。\begin{env} ...\end{env}

如果您真的想开始, \verbatim那么您必须做这样的事情来解决由于一般和verbatim特别的环境的各种乳胶设置而导致的错误:

\documentclass{article}

\begin{document}
\begingroup\makeatletter\def\@currenvir{verbatim}
\verbatim
  verbatim 
\end{verbatim}

text
\end{document} 

在此处输入图片描述

\verbatim这表明,如果没有 verbatim 等包的帮助,直接使用并不是一个好主意。

答案2

该软件包verbatim支持创建自己的verbatim环境,请参阅包装文档以下示例定义环境metaverbatim以允许\begin{verbatim}\end{verbatim}在逐字块内:

\documentclass{article}
\usepackage{verbatim}
\newenvironment{metaverbatim}{\verbatim}{\endverbatim}

\begin{document}
\begin{metaverbatim}
\begin{verbatim}
  This is a verbatim block.
\end{verbatim}
\end{metaverbatim}
\end{document}

结果

内部\verbatim\endverbatim是作为环境的开始和结束部分执行的命令verbatim。但它们不应该在环境之外使用,因为verbatim环境专门寻找\end{...}...作为逐字环境的名称。

答案3

我建议看一下这个fancyvrb包,它介绍了几个定制功能。

主环境被Verbatim称为

\documentclass{article}
\usepackage{fancyvrb}

\begin{document}

\begin{Verbatim}
\begin{verbatim}
This is a verbatim block.
\end{verbatim}
\end{Verbatim}

\end{document}

可以完美运行。如果您需要展示环境示例,则仍存在问题Verbatim。如果需要,则添加

\DefineVerbatimEnvironment{MetaVerbatim}{Verbatim}{}

会允许

\documentclass{article}
\usepackage{fancyvrb}
\usepackage{xcolor}

\DefineVerbatimEnvironment{MetaVerbatim}
  {Verbatim}
  {formatcom=\color{mvcolor}}% this argument contains options   
\colorlet{mvcolor}{green!60!red}

\begin{document}

\begin{Verbatim}
\begin{verbatim}
This is a verbatim block.
\end{verbatim}
\end{Verbatim}

\begin{MetaVerbatim}
\begin{Verbatim}
This is a Verbatim block.
\end{Verbatim}
\end{MetaVerbatim}

\end{document}

颜色MetaVerbatim只是为了展示众多可能的定制之一。

在此处输入图片描述

相关内容