逐字环境用于显示 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
只是为了展示众多可能的定制之一。