不要评论列表、列表包的某些部分

不要评论列表、列表包的某些部分

我正在使用 listings (language=[LaTeX]TeX) 包来排版 LaTeX 代码。当我使用 \% (text) 时,该包将部分字符串解释为 LaTeX 注释,\% (文本)。我需要将其格式化为 \%。否则,百分号字符应该在排版列表中开始注释。我的示例使用内联列表,但该解决方案也适用于列表环境。

\documentclass{article}
\usepackage{listings}
\lstset{language=[LaTeX]TeX}
\begin{document}
  \lstinline+3\% per annum+ 
\end{document}    

答案1

您可以先使用 literate 替换 \%:

\documentclass{article}
\usepackage{listings}
\lstset{language=[LaTeX]TeX,literate={\\\%}{\%}2} % or 1 (less space)
\begin{document}
  \lstinline+3\% per annum+

  \lstinline+3\% % per annum+
\end{document}

在此处输入图片描述

答案2

listings包知道对于 TeX 来说,这%是注释的开始(但仍会读取其后的文本)。这是因为其内容是逐字读取的。因此,只需使用代码作为文档的源即可:

\documentclass{article}
\usepackage{listings}
\lstset{language=[LaTeX]TeX}
\begin{document}
  \lstinline+3% per annum+ 
\end{document}  

相关内容