![Lstlisting-为前后缀名称定义其他颜色](https://linux22.com/image/348964/Lstlisting-%E4%B8%BA%E5%89%8D%E5%90%8E%E7%BC%80%E5%90%8D%E7%A7%B0%E5%AE%9A%E4%B9%89%E5%85%B6%E4%BB%96%E9%A2%9C%E8%89%B2.png)
我正在使用 listings 包并尝试定义自己的 XML 样式。它看起来像这样:
\lstdefinestyle{webxml}{%
language=XML,
tagstyle=\color{purple},
keywordstyle=[1]{\color{red}},
keywordstyle=[2]{\color{purple}},
morekeywords=[1]{name},
}
现在我面临一个问题:
<property name="eclipselink.ddl-generation" value="create-tables" />
<name>peer</name>
第一行中的名称值显示为红色。这是正确的。但第二个“标签”也显示为红色。我怎样才能将“名称”标签的颜色改回紫色?有没有办法添加其他标签?与 morestring 或 morekeyword 相比?
谢谢您的帮助。
以下也是一个 MWE:
\documentclass[12pt,a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[ngerman,english]{babel}
\usepackage{listings, xcolor}
\lstdefinestyle{webxml}{%
language=XML,
tagstyle=\color{purple},
keywordstyle=[1]{\color{red}},
keywordstyle=[2]{\color{purple}},
morekeywords=[1]{value, name},
keywords=[2]{<name>} %???
}
\begin{document}
\begin{lstlisting}[style=webxml]
<property name="eclipselink-ddl-generation" value="create tables" />
<name>peer</name>
\end{lstlisting}
\end{document}