逐字着色但保留括号

逐字着色但保留括号

我有这个代码:

\begin{Verbatim}[commandchars=\\\{\}]
    > \textcolor{names}{A}={\textcolor{numbers}{6},\textcolor{numbers}{75},\textcolor{numbers}{46}}
    > \textcolor{names}{B}={\textcolor{numbers}{8},\textcolor{numbers}{55},\textcolor{numbers}{64},\textcolor{numbers}{48}}
\end{Verbatim}

输出:

> A = 6,75,46
> B = 8,55,64,48

没有保留括号。如何commandchars=\\\{\}定义它才能仍然给我提供带有原始括号和语法颜色的输出。


删除[commandchars=\\\{\}]

输出如下内容:

> \textcolor{names}{A}={\textcolor{numbers}{6},\textcolor{numbers}{75},\textcolor{numbers}{46}}
> \textcolor{names}{B}={\textcolor{numbers}{8},\textcolor{numbers}{55},\textcolor{numbers}{64},\textcolor{numbers}{48}}

答案1

您想使用不同的字符来替换分隔参数的括号。

并且使用较少的标记。

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

\colorlet{names}{green!60!blue}
\colorlet{numbers}{red!80!blue}
\newcommand{\cna}[1]{\textcolor{names}{#1}}
\newcommand{\cnu}[1]{\textcolor{numbers}{#1}}

\begin{document}

\begin{Verbatim}[commandchars=\\\[\]]
> \cna[A]={\cnu[6],\cnu[75],\cnu[46]}
> \cna[B]={\cnu[8],\cnu[55],\cnu[64],\cnu[48]}
\end{Verbatim}

\end{document}

不要缩进逐字环境,除非您确实想要初始空格。

在此处输入图片描述

相关内容