【发布时间】:2017-01-08 21:21:21
【问题描述】:
我的理解是,knitr:spin 允许我处理我的普通、普通、常规的良好 R 脚本,同时保持生成理解 Markdown 语法的完整文档的能力。 (见https://yihui.name/knitr/demo/stitch/)
确实,Rstudio 中的 rmarkdown 功能虽然超级简洁,但实际上确实很麻烦,因为
- 我需要复制我的代码并将其分成几块,这非常无聊 + 效率低下,因为很难跟踪代码更改。
- 除此之外,
rmarkdown无法读取我当前的工作空间。这有点令人惊讶,但事实就是如此。
总而言之,这非常限制...有关相关讨论,请参见此处Is there a way to knitr markdown straight out of your workspace using RStudio?。
正如这里所讨论的 (http://deanattali.com/2015/03/24/knitrs-best-hidden-gem-spin/),spin 似乎是解决方案。
确实,knitr:spin 语法如下所示:
#' This is a special R script which can be used to generate a report. You can
#' write normal text in roxygen comments.
#'
#' First we set up some options (you do not have to do this):
#+ setup, include=FALSE
library(knitr)
在常规工作区中!
但是注意每一行文本前面是如何以#' 开头的。
我的问题是,在每行文本之后添加#' 也是非常低效的。有没有办法自动做到这一点?
假设我选择了一整段文本,而 rstudio 将 #' 每行添加?也许本着与注释一大段代码行相同的精神?
我错过了什么吗?
谢谢!
【问题讨论】:
-
在选定的代码块中用散列和撇号替换每个散列怎么样?
-
您说的是代码块内的注释文本还是代码块外的常规文本?您可以发布完整 rmarkdown 文档的示例吗?
-
对于块外的常规文本,只需键入常规文本。不需要哈希标记。
-
在 RStudio 中打开一个新的
rmarkdown文档,其中包括一个示例文档。请注意 R 代码是如何在单独的块中设置的。对于内联 R 代码,即句子中的 R 代码,假设您之前在代码块中创建了一个值x,并且您想在句子中使用它。然后你可以输入这个(不带双引号):“现在我们可以看到`x`等于`r x`”。使用 R markdown 的所有基本信息都可以在here找到。 -
听起来他想用
knitr::spin而不是写rmd。
标签: r rstudio knitr r-markdown