我只想让 pdf 中的文本与编辑器中的文本相同

我只想让 pdf 中的文本与编辑器中的文本相同

我想从剪贴板粘贴从文本编辑器(line wordpad++、vim、notepad 等)复制的纯文本,并且希望 TeX 遵循编辑器所具有的相同换行符格式。这在大多数文本编辑器之间都运行良好,但是,如果我将文本复制到 TeX 编辑器并进行编译,则它不会遵循换行符。

当然,我可以输入\\\linebreak或任何其他排版函数,但我不想这样做。此外,像 & 符号这样的简单 ASCII 符号也必须转义 ( \&) 我只想让文本在我.pdf的编辑器中以与在编辑器中相同的方式显示,而无需在 TeX 编辑器中进一步编辑它。

有什么功能|样式设置可以帮助我吗?

请注意,我还需要对引用的文本进行自动换行。

答案1

listings包裹还允许逐字设置内容。下面是一个例子,使用language=TeX(如果你有纯文本,应该没问题):

在此处输入图片描述

\documentclass{article}
\usepackage{listings}% http://ctan.org/pkg/listings
\begin{document}
\begin{lstlisting}[language=TeX]
Lorem ipsum dolor sit amet, consectetur 
adipiscing elit. Fusce pulvinar risus 
eu neque porttitor a ultrices magna 
malesuada. Mauris ullamcorper, elit at 
euismod fermentum, mi velit imperdiet 
est, in auctor orci lorem eu velit. 
Integer venenatis accumsan mollis. Cras 
in eros metus, id euismod ante. Class 
aptent taciti sociosqu ad litora 
torquent per conubia nostra, per inceptos 
himenaeos. Vivamus nisl tortor, eleifend 
at vestibulum sit amet, scelerisque 
a lacus. Aenean tempus nibh eu ante 
fringilla laoreet. Pellentesque et diam 
sem, sed venenatis turpis. Aenean ac 
euismod dui. Vivamus faucibus elit non 
dolor tincidunt non pulvinar felis 
sagittis. Mauris mi massa, malesuada id 
vestibulum et, tincidunt ac nibh. 
Donec in orci eros, eu accumsan odio. 
Curabitur ipsum nunc, dictum vitae 
faucibus non, aliquet quis leo. Nullam 
nisi diam, rhoncus sagittis semper non, 
pharetra et eros. Etiam a metus nulla, non 
egestas leo.
\end{lstlisting}
\end{document}​​​​​​

答案2

使用verbatim环境。

\documentclass{article}
\begin{document}
\begin{verbatim}
Do not format this text.
\end{verbatim}
\end{document}

如果您需要更复杂的功能,请查看fancyvrb 包

答案3

如果您想要非常短的文本,请尝试使用 plain-TeX \obeylines。但是,它应该成组使用。此外,在 obedlines 模式下,TeX 在每行后开始一个新段落,这可能会导致缩进。因此,您可能需要更改缩进(下面的第三个示例)。

像这样尝试一下(与默认值进行比较):

\documentclass{article}
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad
minim veniam, quis nostrud exercitation ullamco laboris nisi ut

{\obeylines %
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad
minim veniam, quis nostrud exercitation ullamco laboris nisi ut
}

{\parindent=0pt \obeylines %
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad
minim veniam, quis nostrud exercitation ullamco laboris nisi ut
}

\end{document}

请注意,通常不希望将纯 TeX 命令与\obeylinesLaTeX 混合使用。但是,偶尔,这种解决方案可能适用。此外,此解决方案不会为您完成转义。

要更复杂地包含逐字文本,请使用verbatim环境。请注意,它将默认字体更改为打字机样式的等宽字体。该fancyvrb包包含更复杂的逐字文本功能;它还默认更改其环境中的字体。

listing包用于排版程序代码列表和语法突出显示。它还可用于简单地将逐字文本包含在文档中。

答案4

我认为 Tobias 提供了解决方案(给他投票!)但我不认为他的例子展示得那么好。因此我提供了第二个例子:

\documentclass{article}
\begin{document}

{\parindent=0pt \obeylines %
First comes a really really really really really really really long line that needs to be line wrapped automagicly by tex
after that comes
multiple short 
ones 
Where the newlines should be obeyed.
}

\end{document}

在此处输入图片描述

相关内容