标签键有什么用处?

标签键有什么用处?

现行《listings文档(2013/08/26 版本 1.5b)描述了一个名为 的键tag。该键用于lstdrvrs.dtx,这是一个附带listings并负责预定义语言的文件。更具体地说,tag密钥用于HTMLXML语言的定义,如下所示:

\lst@definelanguage{<languagename>}{
  % ...
  tag=**[s]<>,%
  % ...
}

那么,为什么我不能使用tag自定义语言定义中的键呢?例如,下面的代码会引发以下错误:

!Package keyval Error: tag undefined.

我的 TeX 发行版是最新的。我不明白……

\documentclass{article}

\usepackage{listings}
\lstdefinelanguage{mylang}%
{%
    tag=**[s]<>,
}

\begin{document}
\begin{lstlisting}[language=mylang]
<b>foobar</b>
\end{lstlisting}
\end{document}

答案1

文档忽略了提及密钥仅在“方面”(而非语言)内tag定义(在) 。使用lstmisc.styhtml

\lstloadaspects{html}

(或作为包选项)将把tag密钥放在你的手中。你也可以在最后一个可选参数中加载它\lstdefinelanguage

\lstdefinelanguage{mylang}{tag=**[s]<>}[html]

相关内容