tutorial the texto sheet opts_chunk guide examples español definitive como cheat centrar r packages knitr

texto - r markdown the definitive guide pdf



Las viñetas de Knitr.Rmd no aparecen con la viñeta() (2)

Bueno, encuentro una magia oscura que puede solucionar esta situación.

Desde Configure Build Tools... , RStudio nos permite opciones personalizadas para R CMD INSTALL cuando hace clic en el botón Build & Reload . En la implementación actual, se comporta como la ejecución de R CMD INSTALL [options] pkg en el directorio principal del directorio del paquete. Resulta que estas opciones pueden ser cadenas arbitrarias, incluso incluidas ; , por lo tanto nos permite ejecutar comandos bash.

Por ejemplo, podemos especificar -v; cd pkg; cp vignettes/*html inst/doc; R CMD INSTALL --no-multiarch --with-keep.source .; echo -v; cd pkg; cp vignettes/*html inst/doc; R CMD INSTALL --no-multiarch --with-keep.source .; echo

De esta manera, -v anula la instalación de R CMD INSTALL RStudio. Luego podemos copiar los archivos html incorporados en la vignette/ a inst/doc/ antes de instalar el paquete usando nuestro propio R CMD INSTALL . ( cd pkg; nos libera del nombre del tipo de paquete varias veces en los comandos subsiguientes. echo anula el nombre del paquete adjunto por RStudio.

Sé que hay muchos inconvenientes en este truco, como el nombre del paquete de codificación rígida que es propenso a errores si el nombre del paquete se modifica más adelante.

Úselo bajo su propio riesgo.

Espero que RStudio salga pronto una solución elegante.

En un paquete que estoy desarrollando con R Studio, creo viñetas a través de devtools::use_vignette("mydoc.Rnw") , lo que da un encabezado de viñeta estándar como

--- title: "Title" author: "Michael Friendly" date: "`r Sys.Date()`" output: rmarkdown::html_vignette vignette: > %/VignetteIndexEntry{Title} %/VignetteEngine{knitr::rmarkdown} %/VignetteEncoding{UTF-8} ---

He seguido todas las instrucciones en http://yihui.name/knitr/demo/vignette/ y http://r-pkgs.had.co.nz/vignettes.html . Las viñetas se enumeran en la página CRAN para el paquete, sin embargo, parecen inaccesibles en una sesión R con el paquete cargado.

> browseVignettes("matlib") No vignettes found by browseVignettes("matlib") > library(tools) > names(vignetteEngine(package = ''matlib'')) Error in getEngine(name, package) : None of packages ‘matlib’ have registered vignette engines

Sé que otros paquetes con viñetas knitr procesadas por knitr son accesibles desde el paquete, pero no puedo entender por qué los míos no son accesibles. ¿Lo que falta?

El directorio Mis vignettes/ contiene solo los archivos .Rmd (no PDF), pero parece lo mismo que, por ejemplo, https://github.com/yihui/knitr/tree/master/vignettes .


Tenga en cuenta que devtools no crea viñetas de forma predeterminada cuando devtools::install() (lo mismo para algunas funciones install_* como install_github() ) un paquete de un directorio. build_vignettes = TRUE especificar el argumento build_vignettes = TRUE cuando instale el paquete. Actualmente no hay forma de crear viñetas usando devtools si solo usas el botón RStudio Build & Reload . Tienes que Build Source Package y ejecutar R CMD INSTALL en el tarball. O ejecute devtools::install(build_vignettes = TRUE) en la consola R.