这lstlisting
中断我的单词,因为它将其视为“其他”字符,如所述这里。
下面是一个最小示例。第二个单词在任意“ü”处被拆分,但事实并非如此。选项“alsoletter”应该指定“ü”应被视为普通字符,但我无法简单地输入“ü”,因为它是“literate”中定义的特殊字符。
\documentclass[12pt, twoside]{report}
\usepackage[utf8]{inputenc}
\usepackage{listings}
\lstset{
breaklines=true,
literate=%
{Ö}{{\"O}}1
{Ä}{{\"A}}1
{Ü}{{\"U}}1
{ß}{{\ss}}1
{ü}{{\"u}}1
{ä}{{\"a}}1
{ö}{{\"o}}1
{~}{{\textasciitilde}}1,
alsoletter={\"u}
}
\begin{document}
\begin{lstlisting}[]
üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü üüüüüüüüüüüüüüüüüü123üüüüüüüüüüüü
\end{lstlisting}
\end{document}
答案1
终于找到了答案 - 据我所知,%(
和之间的所有内容%)
都将正确编码为 utf8。列表中的结尾序列也可以省略
\documentclass[12pt, twoside]{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{listingsutf8}
\lstset{
breaklines=true,
breakatwhitespace=true,
escapeinside={\%(}{\%)},
extendedchars=true,
inputencoding=utf8,
}
\begin{document}
\begin{lstlisting}[]
%(üüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüü üüüüüüüüüüüüüüüüüü123üüüüüüüüüüüü%)
\end{lstlisting}
\end{document}