18

编写一些带有代码片段的文档,我希望这些文档可以复制以按书面方式运行。这些片段可能包括带有前面空格的行。列表包可以很好地格式化文本,但空格是不可复制的。

假设我有以下示例:

\documentclass{article}
\usepackage{listings}
\begin{document}
\lstset{
    basicstyle=\ttfamily,
    frame=single,
    columns=fullflexible
}
\begin{lstlisting}[language=python]
def foo():
    return "bar"
\end{lstlisting}
\end{document}

如果我将列表复制并粘贴到某处,它将变为:

def foo():
return "bar"

必须手动纠正。

有没有办法让列表包包含原始空间?或者有没有更适合这种情况的包?

4

1 回答 1

4

这(很可能)不是列表(或根本不是乳胶)的问题,而是您的 PDF 渲染软件的问题。例如,在 OSX 上使用基于 PDFKit 的(Preview,Skim,...),我得到了你描述的行为。但是,通过使用 Xpdf,可以正确复制文本。

于 2010-08-20T09:04:26.220 回答