3

this works great---well, I stole it right out of the docs:

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

now I would like to have multiple active characters, each designating a particular style. I could bore everyone with my code that tries to generalize this to two or three characters (define '-' as active, then add another defineactive with a comma), but they were all wrong.

is this easy?

a related question (not needed) is whether one can easy switch forth and back on the same line.

advice appreciated.

ivo Welch
  • 3,766

1 Answers1

4

You can have multiple active characters:

\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}

enter image description here

and define a custom environment to handle this specification, but I'd strongly suggest you to switch to the listings package for heavy formatting of listings.

Gonzalo Medina
  • 505,128
  • agreed. I think fancyvrb is better for showing interactions of a user with a shell and programs, with some input and output, etc., that need to come in different typeset. – ivo Welch May 29 '14 at 14:19