如何在列表包中强制换行?

Ada*_*dam 40 latex

我有关于乳胶列表包的问题.我需要在我的硕士论文'附录中嵌入以下XML文档的源代码http://www.sparxsystems.com.au/downloads/profiles/EP_Extensions.xml.问题是,无论我传递给包的选项是什么,我似乎都无法将其放在页面上.列表中的行太长了,列表包没有包装它们,这看起来很奇怪......什么样的选项组合才能解决问题?

目前我使用以下lstset指令:

\lstset{
breakindent=0em,
language=XML,
basicstyle=\footnotesize,
numbers=left,
numberstyle=\footnotesize,
stepnumber=2,
numbersep=5pt,
backgroundcolor=\color{white},
showspaces=false,
showstringspaces=false,
showtabs=false,
frame=single,
tabsize=2,
captionpos=b,
breaklines=true,
breakatwhitespace=true,
breakautoindent=true,
escapeinside={\%*}{*)},
linewidth=\textwidth
}
Run Code Online (Sandbox Code Playgroud)

其中,没有设置其他选项,并结合以下命令:

\lstinputlisting{EP_Extensions.xml}
Run Code Online (Sandbox Code Playgroud)

列出给定文件的源代码到以下输出: 替代文字

Pet*_*Law 58

我刚遇到这个问题......

breaklines 虽然您确实需要将其设置为true,但默认值为false:

\lstinputlisting[style=Python,
    caption=My Class,
    label={mine.py},
    breaklines=true,
  ]{../python/mine.py}
Run Code Online (Sandbox Code Playgroud)

几乎就是我用过的东西


小智 10

我有这个问题,这个页面在谷歌排名很高,所以这里是我的解决方案:

我有以下内容:\usepackage[none]{hyphenat}导致上述问题.我正在使用它来解决乳胶问题,在一个单词的中间自动打破线条,在某些情况下看起来真的很愚蠢.

经过多次寻找替代解决方案之后,我发现没有什么合适的东西可以解决正确的断线,但是连接位置很差.


sec*_*ond 2

这不是一个很好的答案,但一个想法是在包含源代码之前对其进行自动换行。如果您使用的是 Linux,则可以使用命令Fold来实现此目的。显然,如果文本采用固定宽度字体,则效果最好,在任何情况下我都会推荐用于代码列表。