fancyvrb: 多个活动

fancyvrb: 多个活动

这很有效---好吧,我从文档中偷来了它:

{
  \catcode`!=\active
  \begin{Verbatim}[defineactive=\def!{\color{red}\bf}]
    black
!   red
    black
  \end{Verbatim}
}

现在我想有多个活动字符,每个字符指定一种特定的样式。我可以用我的代码来让每个人都感到厌烦,我试图将其概括为两个或三个字符(将“-”定义为活动字符,然后添加另一个带有逗号的 defineactive),但它们都是错误的。

这容易吗?

一个相关的问题(不需要)是是否可以轻松地在同一线路上来回切换。

谢谢您的建议。

答案1

你可以拥有多个活跃角色:

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

\begin{document}

{
  \catcode`!=\active
  \catcode`@=\active
  \catcode`?=\active
  \begin{Verbatim}[defineactive={
    \def!{\color{red}}
    \def@{\color{cyan}}
    \def?{\color{orange}}
    }
  ]
    black
!    red
@    blue
?    orange
  \end{Verbatim}
}

\end{document}

在此处输入图片描述

并定义一个自定义环境来处理这个规范,但我强烈建议你切换到listings用于列表高度格式化的包。

相关内容