latex和清单:突出显示代码的某些部分 我使用胶乳和清单> /Cuff>包在文档中显示一些C++代码(语法高亮显示)。

latex和清单:突出显示代码的某些部分 我使用胶乳和清单> /Cuff>包在文档中显示一些C++代码(语法高亮显示)。,latex,Latex,我需要强调代码的某些部分。这个特定的突出显示与语法突出显示无关,它只是我想突出显示的代码的一些部分,以便读者能够关注它 我希望我可以制作一些变量名,例如,以粗体显示,并在黄色背景上显示。下面是我用MSWord做的一些事情,我想用乳胶复制(当然,不是红色和绿色的下划线): 我还没有找到使用清单软件包的方法。有可能吗?您可以在列表区域内启用任意LaTeX命令: \begin{listings}[escapeinside=\{\}] {\highlight{Colonnes[3] = 9}} \e

我需要强调代码的某些部分。这个特定的突出显示与语法突出显示无关,它只是我想突出显示的代码的一些部分,以便读者能够关注它

我希望我可以制作一些变量名,例如,以粗体显示,并在黄色背景上显示。下面是我用MSWord做的一些事情,我想用乳胶复制(当然,不是红色和绿色的下划线):


我还没有找到使用
清单
软件包的方法。有可能吗?

您可以在
列表
区域内启用任意LaTeX命令:

\begin{listings}[escapeinside=\{\}]
{\highlight{Colonnes[3] = 9}}
\end{listings}
\highlight
是突出显示宏(您需要自己编写)。有关更多详细信息,请参阅清单文档第4.14节(“转义到LaTeX”)。注意,您现在需要避免代码中所有特殊字符的出现。因此,对于C++代码,<代码> {} /代码>可能是一个糟糕的选择。

< P>不幸的是,真正逃离了<>代码>清单>代码>完全格式化。如果突出显示的文本包含任何程序关键字,则
列表
程序包不会突出显示这些关键字,因为它们将位于非突出显示的行上。理想的方法可能是使用
\highlight{\lstinline{…}
,但似乎无法在
清单
环境中嵌套
\lstinline

TeX StackExchange站点具有、和。它覆盖突出显示,同时仍然允许
列表
自动格式化突出显示的文本


这种基于tikz的方法最终导致了。这是目前(对我来说)最为人所知的突出显示所选
列表
行的方法,同时保持自动语法突出显示。在给定页面上的任何一对位置之间的高亮显示也很有效。

< P>在C或C++代码中,我认为字符<强> 可以作为转义符。

lstset {
...
escapeinside=\`\`,
...
}
然后,你可以像这样使用它

\begin{lstlisting}
const_cast<T>(`\it{exception}`)
\end{lstlisting}
\begin{lstlisting}
常量转换(`\it{exception}`)
\结束{lstlisting}
单词
exception
随后变成exception。顺便说一句,字符`是标记格式
代码的字符,所以它很容易在C或C++类似代码列表中使用。我无法使用
escapeinside
(不知道为什么,出现了我不理解的错误),但使用了
escapechar=\%
。对于记录,我使用包
xcolor
定义了
\highlight
宏:\newcommand\highlight[1]{\colorbox{yellow}{1}}。