使编织器代码块更干净利落地切割

Jos*_*ien 5 r knitr

我想使用knitr生成pdf文档,从中可以干净地剪切和粘贴示例代码,但似乎无法做到.

我遇到的问题的一个例子:

所述knitr手册 PDF包括这个码块(第3页):

## option tidy=TRUE
for (k in 1:10) {
j <- cos(sin(k) * kˆ2) + 3
print(j - 5)
} 
Run Code Online (Sandbox Code Playgroud)

从pdf复制然后粘贴到R(或SO等)时,它会产生:

## option tidy=TRUE
for (k in 1:10) f j <- cos(sin(k) * kˆ2) + 3
print(j - 5)
g 
Run Code Online (Sandbox Code Playgroud)

看到前两行代码是如何被合并到一个,而且,更糟糕的,{}地转化为fg

我的问题:

首先,我想,这是其他人经历的事情吗?它只发生在Windows或其他地方吗?

如果不只是我,是否有一些简单的解决方法?在编译*.tex文件时使用不同的字体会产生*.pdf更容易复制和粘贴的文档吗?

(FWIW,如果我改为使用铸造突出显示我的R代码,我没有任何相同的问题,所以我知道可以做到这一点.)

Jos*_*ien 8

根据这个问题的线索及其接受的答案,我发现使用LaTeX fontenc包将字体编码设置为T1可以修复上面报告的问题.(另请参阅此处,了解为何使用T1或多或少是官方推荐的各种LaTeX文档的最佳实践.改进的复制和可匹配性是该链接中提到的几个很好的理由之一.)

以下是固定文档中序言的开头如下:

\documentclass[a4paper]{article}
\usepackage[T1]{fontenc}
Run Code Online (Sandbox Code Playgroud)