【发布时间】:2016-08-05 07:45:32
【问题描述】:
我是 knitr 的新用户。我知道 knitr 可以“解决”(取自 Literate programming community)或将源代码块提取到 R 脚本文件中。作为 org-mode-user,我习惯于为每个代码块指定一个特定的文件,不同的块可能使用相同的文件。在 org 模式下“纠结”或提取源代码时,会生成多个代码文件,而不是一个输出代码文件(这有助于大型项目的模块化)。
我想知道在 knitr 中是否有类似的可能?我可以在knitr中逐块指定输出文件吗?
【问题讨论】:
-
也许您可以进一步澄清这个问题。提供示例会有所帮助。我是一个普通的 knitr 用户,但我不知道你在问什么。
-
@Maxim.K 我认为你不知道霍尔格在问什么的原因是问题的答案是“不”。但我完全同意,问题(c/sh)会更清楚。我认为 Holger 正在寻找一个块选项,它在每个块的基础上为
purl指定输出文件(不存在,AFAIK)。 -
@CL 是的——这正是我想要的。我已经从手册中意识到可能没有一个“简单”的选项,但我希望有比我更多的 knitr 知识的人知道如何编写可以做到这一点的某种钩子函数。
-
我一直在研究代码。可能
hook_purl可以这样扩展。查看line 123:您可以尝试将output替换为基于(新创建的)块选项生成的另一个文件名。但是,我不愿意实现这一点并将其作为答案发布,因为我不确定不写信给.knitEnv$tangle.file是否会产生令人讨厌的副作用。