使用带有宏的 lstlisting 环境?

发布于 2024-11-17 05:55:16 字数 238 浏览 2 评论 0原文

我尝试定义一个宏,以便我快速创建一个列表环境。定义看起来像这样:

% \def \lstlistingcode[#1] { \begin{lstlisting}#1\end{lstlisting} }

以错误结束:

job aborted, no legal \end found

是否可以在宏中使用环境,如果可以,如何使用?

I tried to define a macro, for me to quickly create a listing environment. The definition looked like that:

% \def \lstlistingcode[#1] { \begin{lstlisting}#1\end{lstlisting} }

which ends in an Error:

job aborted, no legal \end found

Is it possible to use environments within macros, and if yes - how?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦途 2024-11-24 05:55:16

有些环境可以,例如 alltt;然而,lstlisting 不能,因为它的编写方式(它显然与它所做的各种 catcode 内容有关)。

像你一样使用 \def 有点过时了;首选 \newcommand:

\newcommand \allttcode[1] { \begin{alltt}#1\end{alltt} }

...

\allttcode{test}

Some environments can, e.g. alltt; however, lstlisting can't, because of how it is written (it apparently has to do with various catcode stuff that it does).

Using \def as you do is sort of outdated; \newcommand is preferred:

\newcommand \allttcode[1] { \begin{alltt}#1\end{alltt} }

...

\allttcode{test}

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文