importfrom example r roxygen2

example - roxygen2 no actualiza completamente el archivo DESCRIPTION



r roxygen2 example (1)

roxygen2 funciona como estaba previsto, pero experimenté la misma confusión cuando lo usé por primera vez para documentar un paquete. Lo importante a entender es que hay un par de archivos diferentes que describen paquetes en la mezcla.

  • Cuando se procesa el marcado roxygen en rlandscape-package.R , se produce un archivo rlandscape-package.Rd en el directorio man de su paquete fuente. Esto a su vez produce la documentación que ve cuando escribe ?"rlandscape-package" o ?"rlandscape-package" .

  • El archivo de DESCRIPTION en el directorio superior de tu árbol fuente es una bestia completamente separada. Aunque sucede que produce un archivo de ayuda que puede ver (a través de la help(package="rlandscape") ), tiene muchos otros roles más importantes en la dirección de la producción de paquetes. La única forma en que Roxygen2 lo toca / afecta es que la función collate_roclet() (ejecutada cuando usted roxygenize() su paquete) realizará una fusión con el campo Collate en un archivo DESCRIPTION preexistente (como se describe en la p 10 de este pdf ).

El mensaje principal es que incluso cuando use roxygen2, si desea realizar cambios en su archivo de DESCRIPTION , deberá hacerlo editándolo directamente.

Estoy haciendo mi primer paquete de rlandscape , usando Roxygen2 y tratando de seguir la viñeta de Roxygen, ya que Roxygen2 no tiene uno.

Al igual que en la viñeta (página 3), creé un archivo llamado rlandscape-package.R que solo contiene documentación del paquete. En la viñeta, dicen.

cada bloque de descripción de Roxygen debe ir seguido de una declaración, incluso del material del encabezado que describe un archivo o paquete en lugar de una función específica. roxygen () se proporciona como un NOOP (declaración nula) para representar tales casos.

pero si sigo el bloque de descripción con roxygen() una llamada a package.skeleton produce Error in eval(expr, envir, enclos) : could not find function "roxygen" . Así que he intentado dejar el roxygen() por completo y también reemplazarlo por NA , que parecen producir los mismos resultados: package.skeleton() funciona correctamente (incluido rlandscape-package.R como uno de los code_files de code_files argumentos), y entonces puedo roxygenize

> roxygenize("rlandscape", roxygen.dir = "rlandscape") Updating collate directive in /Users/Gregor/Dropbox/rlandscape/rlandscape/DESCRIPTION Updating namespace directives Writing plot.landscape.Rd Writing rland.Rd Writing rland.gui.Rd Writing makePoints.Rd Writing rCluster.Rd Writing rlandscape-package.Rd Writing rlandscape.Rd

que parece ejecutarse con éxito, pero el archivo de DESCRIPCIÓN tiene el campo "Collate" anexado, pero por lo demás no ha cambiado con respecto a lo que package.skeleton creó. ¿Por qué no se actualiza el resto del archivo de descripción?