- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我怎样才能避免这种情况\dontrun{
在包含示例的单独文件中变为 \\dontrun{
氧化后在各自的 Rd 文件中?
我确实找到了解决方法,但感觉好像我可能只是错过了一些明显的东西,即 roxigenize()
的某些设置.
我想我在处理 roxygen2 的示例时注意到了一个可能的错误,或者,恕我直言,至少是一个不受欢迎的行为。存储在单独的文件中(而不是在实际的 roxygen 代码中直接声明)。
问题在于 \dontrun{
行在相应的示例文件中变为 \\dontrun{
在氧化后生成的 Rd 文件中。
下面您将找到该行为的说明以及简单的解决方法
dir.create("src", recursive=TRUE, showWarnings=FALSE)
dir.create("package", recursive=TRUE, showWarnings=FALSE)
# Ensure empty package directory
subdirs <- list.files("package", full.names=TRUE)
if (length(subdirs)) {
sapply(subdirs, unlink, recursive=TRUE)
}
foo1 <- function(x) {message("I'm foo #1"); return(TRUE)}
roxy.1 <- c(
"#' Title foo1()",
"#'",
"#' Description foo1().",
"##' This line is commented out",
"#'",
"#' @param x Some R object that doesn't matter.",
"#' @return \\code{TRUE}.",
"#' @references \\url{http://www.something.com/}",
"#' @author John Doe \\email{john.doe@@something.com}",
"#' @seealso \\code{\\link{foo2}}",
"#' @example inst/examples/foo1.R"
)
ex.1 <- c(
"\\dontrun{",
"foo1()",
"}"
)
foo2 <- function(y) {message("I'm foo #2"); return(FALSE)}
roxy.2 <- c(
"#' Title foo2()",
"#'",
"#' Description foo2().",
"##' This line is commented out",
"#'",
"#' @param y Some R object that doesn't matter.",
"#' @return \\code{FALSE}.",
"#' @references \\url{http://www.something.com/}",
"#' @author John Doe \\email{john.doe@@something.com}",
"#' @seealso \\code{\\link{foo1}}",
"#' @examples",
"#' \\dontrun{",
"#' foo2()}",
"#' }"
)
write(roxy.1, file="src/foo1.R")
write(c("foo1 <-", deparse(foo1)), file="src/foo1.R", append=TRUE)
write(roxy.2, file="src/foo2.R")
write(c("foo2 <-", deparse(foo2)), file="src/foo2.R", append=TRUE)
package.skeleton(name="test", path="package",
code_files=c("src/foo1.R", "src/foo2.R"))
foo1()
创建单独的示例文件dir.create("package/test/inst/examples", recursive=TRUE, showWarnings=FALSE)
write(ex.1, file="package/test/inst/examples/foo1.R")
require("roxygen2")
roxygenize(
package.dir="package/test",
overwrite=TRUE,
unlink.target=FALSE,
roclets = c("collate", "namespace", "rd")
)
shell("R CMD check package/test", intern=FALSE)
R CMD 检查的输出被截断,表明 \dontrun{
有问题在./package/test/man/foo1.Rd
[...]
Warning: parse error in file 'test-Ex.R':
1: unexpected input
19:
20: \
^
* checking examples ... ERROR
Running examples in 'test-Ex.R' failed
The error most likely occurred in:
> ### Name: foo1
> ### Title: Title foo1()
> ### Aliases: foo1
>
> ### ** Examples
>
> \dontrun{
Error: unexpected input in "\"
Execution halted
Warning message:
In shell(expr, intern = FALSE) :
'R CMD check package/test' execution failed with error code 1
>
patchRdFiles <- function(
path="package",
name,
...
) {
path <- file.path(path, name, "man")
if (!file.exists(path)) {
stop(paste("Invalid directory path: '", path, "'", sep=""))
}
files <- list.files(path, full.names=TRUE)
#ii=files[1]
.dead <- sapply(files, function(ii) {
cnt <- readLines(ii, warn=FALSE)
if (length(grep("\\\\\\\\dontrun", cnt, perl=TRUE))) {
message(paste("Correcting: '", ii, "'", sep=""))
write(gsub("\\\\dontrun", "\\dontrun", cnt), file=ii)
}
return(NULL)
})
return(TRUE)
}
这将删除 Rd 文件中所有重复的反斜杠:
patchRdFiles(name="test")
8) 再次检查包裹
# CHECK PACKAGE AGAIN
path <- "package/test"
expr <- paste("R CMD check", path)
shell(expr, intern=FALSE)
再次检查 R CMD 的截断输出。相关 Rd 文件现已通过检查。当前错误是由不完整的 ./package/test/man/test-package.Rd
引起的,此时就可以了
[...]
Warning: parse error in file 'test-Ex.R':
11: unexpected symbol
56:
57: ~~ simple examples
^
* checking examples ... ERROR
Running examples in 'test-Ex.R' failed
The error most likely occurred in:
> ### Name: test-package
> ### Title: What the package does (short line) ~~ package title ~~
> ### Aliases: test-package test
> ### Keywords: package
>
> ### ** Examples
>
> ~~ simple examples of the most important functions ~~
Error: unexpected symbol in "~~ simple examples"
Execution halted
Warning message:
In shell(expr, intern = FALSE) :
'R CMD check package/test' execution failed with error code 1
>
最佳答案
这是一个错误,已在最新版本的 roxygen2 中修复。
关于r - 使用 roxygen2 处理示例文件 : backslashes are duplicated (\dontrun becomes\\dontrun),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12460347/
在一组大文件中,我需要将所有出现的“\”替换为“\\”。为此,我想使用 Perl。现在,我有以下内容: perl -spi.bak -e '/s/\\/\\\\/gm' inputFile 这个命令是
我正在尝试将包含双反斜杠的字符串替换为仅包含单反斜杠的字符串,例如: \\This\\Is\\Not\\Working 收件人: \This\Is\Not\Working 使用: str = [str
我需要一个正则表达式来匹配所有被 。匹配项不能跟随奇数个反斜杠,但可以跟随零个或偶数个反斜杠。 目前,我有这个正则表达式: (? 问题是匹配 包括 反斜杠,我需要一个正则表达式,其中 而不是 包括反斜
我在从具有合法反斜杠( \ )的 azure web api 发送数据时遇到了麻烦。数据字段为 user id这是以下模式:Domain\UserId我想将它按原样存储在数据库中。但 Dotliqui
我有一个像下面这样的向量 vec <- c("abc\edw\www", "nmn\ggg", "rer\qqq\fdf"......) 我想在遇到第一个斜杠后立即删除所有内容,如下所示 newvec
我有一个巨大的 csv 文件,其中包含 149 列 和 25K+ 行,可以在 MySQL 中上传该文件> 我正在使用MySQL LOAD DATA 查询 表我的查询是: LOAD DATA local
我一直在阅读 Using namespaces: Aliasing/Importing在 PHP 中。有两件事我不明白。 它说, Note that for namespaced names (ful
在 vim search patterns 中有什么特别的原因吗? “1 个或多个”是 \+ (带反斜杠)和“零个或多个”是 * (没有反斜杠)? 最佳答案 在 comparison to Perl
这是我试图解决的问题的简化版本。所以,尽量不要破解答案:) 在 R 中,默认情况下 '"' == '\"' 因此,当我使用 URLencode('\"') URLencode('"') 我得到了相同的
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 4年前关闭。 Improve thi
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
在Python 3.3中,我试图从截断的unicode值重建unicode字符,然后将字符打印到控制台。 例如,我想从 '4E00' 形成字符串 '\u4E00'。我尝试过: base = '4E00
我正在尝试通过 ajax 发送 php 代码,以便将其保存在文件中。但是当我发送类似的东西时: ...$buffer = "if(\$_POST){".chr(13).chr(10);... 反斜杠消
在我的 Java 程序中,我试图替换字符串中包含反斜杠的子字符串(paloalto\ 到 sanjose\)。但是,即使我使用双反斜杠来减轻反斜杠作为转义字符的影响,我仍然会收到以下错误: Excep
我正在配置 NetIQ IDAM,以及 NetIQ IDAM 的组件之一,即用户应用程序在预配置的 Tomcat 8.5.x 上运行。用户应用程序有一些预定义的功能,可以在 URL 中强制使用反斜杠,
我想用 \\\\ 替换字符串中的 \: wsmatch Matches; wstring String = L"\\"; regex_match( String, Matches, wregex( L
我有一张 table table_id | name | amount 1 | Arby\'s| 12 2 | Wendy's| 8 我通常做一个 SELECT * W
我从知名来源下载了一个制表符分隔的文件,现在想将其上传到 MySQL 表中。我正在使用 load data local infile 执行此操作。 这个超过1000万条记录的数据文件,也不幸出现了很多
以下表达式中的双反斜杠匹配什么? /^[\\?]/ 它是 \ 和 &(转义反斜杠)的过滤器 - 还是 - \\ 和 & (未转义)- 或 - \ 和 ?(转义问号)? 最佳答案 这是您的正则表达式的链
我有一个数据框 df我想将列重命名为: $\beta_0$, $\beta_{t-1}$ ... 这样我就可以得到合适的 latex 输入。我尝试了以下方法: df.columns = ['$ \\b
我是一名优秀的程序员,十分优秀!