3

我正在尝试在存储库中使用 roxygen2 和 devtools 在 R 文档中包含一个 hyperref 链接。 这是一个虚拟版本

#' Test
#' 
#' Test 2
#' 
#' @param x An object
#' @section Suggestion: Looky here: 
#' \enumerate{ 
#'   \item{\bold{Item 1} - Foo}
#'   \item{\bold{Item 2} - Bar:  
#'   \href{https://github.com/hakimel/reveal.js/#installation}{click me}}   
#' }
#' @export 
test <- function(x = "test") {
    print(x)
}

我跑

library(roxygen2)
roxygenize("C:/Users/trinker/GitHub/dummy")

然后在 R studio 中使用 check and out 弹出这个错误:

* checking PDF version of manual ... WARNING
LaTeX errors when creating PDF version.
This typically indicates Rd problems.
LaTeX errors found:
! Illegal parameter number in definition of \Hy@tempa.
<to be read again> 
                   i
l.61 me}

! Illegal parameter number in definition of \Hy@tempa.
<to be read again> 
                   i
l.61 me}

! Illegal parameter number in definition of \Hy@tempa.
<to be read again> 
                   i
l.61 me}

* checking PDF version of manual without hyperrefs or index ... ERROR

Exited with status 1.




Files
Plots
Help




New Folder


Delete


Rename


More




C:  Users   trinker GitHub  dummy   R


Name
Size    Modified

..


dummy-package.R
109 bytes
May 31, 2013, 12:51 PM


test.R
324 bytes
May 31, 2013, 12:56 PM


ConsoleC:/Users/trinker/GitHub/dummy/

所以我逃脱了#它并运行:

#' Test
#' 
#' Test 2
#' 
#' @param x An object
#' @section Suggestion: Looky here: 
#' \enumerate{ 
#'   \item{\bold{Item 1} - Foo}
#'   \item{\bold{Item 2} - Bar:  
#'   \href{https://github.com/hakimel/reveal.js/\#installation}{click me}}   
#' }
#' @export 
test <- function(x = "test") {
    print(x)
}

PDF 看起来不错,并且 hypref 可以工作。但是,如果我这样做:

library(dummy)
?dummy::test

hyperefclick me被破坏并导致:

https://github.com/hakimel/reveal.js//#installation

而不是:

https://github.com/hakimel/reveal.js/#installation

由 pdf (LaTeX 链接) 生成。

如何适当地转义井号 ( #) 以便 pdf 和 html 文档超链接都有效?

我把 devtools 和 roxygen2 标签放在上面,但我认为它们与这个问题无关。

会话信息按要求:

> sessionInfo()
R version 3.0.0 (2013-04-03)
Platform: i386-w64-mingw32/i386 (32-bit)

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252    LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C                           LC_TIME=English_United States.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] dummy_0.1.0

loaded via a namespace (and not attached):
[1] tools_3.0.0
4

0 回答 0