当设置为时,使用 key 定义的某些关键字的otherkeywords
格式不符合预期。这是我的 MWE:breaklines
true
\documentclass[12pt, a4paper]{article}
\usepackage{listings}
\lstset{
basicstyle=\itshape\ttfamily,
keywordstyle=\upshape,
}
\lstdefinestyle{syntax}{
language=[ANSI]C,
otherkeywords={(,)},
breaklines=true,
}
\begin{document}
\begin{lstlisting}[style=syntax]
const ( int | float ) text
\end{lstlisting}
\end{document}
结果看起来像这样(但很好地等宽......):
const ( int | 浮点数) 文本
如果我设置 breaklines=false,它看起来就像预期的那样:
const ( int | float )文本
我是否忽略了一些显而易见的东西?至于版本,Windows 上为“这是 pdfTeX,版本 3.1415926-2.4-1.40.13 (MiKTeX 2.9)”(在工作中,他们强迫我...)。
答案1
基于https://tex.stackexchange.com/a/149203/36296
\documentclass{article}
\usepackage{listings}
\usepackage{etoolbox}
\lstset{
basicstyle=\itshape\ttfamily,
keywordstyle=\upshape,
}
\lstdefinestyle{syntax}{
language=[ANSI]C,
breaklines=true,
otherkeywords={(,)},
}
\makeatletter
\patchcmd{\lsthk@SelectCharTable}{)}{`}{}{}
\makeatother
\begin{document}
\begin{lstlisting}[style=syntax]
const ( int | float ) text
\end{lstlisting}
\end{document}