Идея roxygen2 проста: опишите свои функции в комментариях рядом с их определениями, и roxygen2 обработает ваш исходный код и комментарии для автоматического создания файлов .Rd
в man/
, NAMESPACE
и, при необходимости, в поле Collate
в DESCRIPTION
.
# Install roxygen2 from CRAN
install.packages( " roxygen2 " )
# Or the development version from GitHub:
# install.packages("pak")
pak :: pak( " r-lib/roxygen2 " )
Идея roxygen2 проста: опишите свои функции в комментариях рядом с их определениями, и roxygen2 обработает ваш исходный код и комментарии для создания файлов Rd в каталоге man/
. Вот простой пример из пакета stringr:
# ' The length of a string
# '
# ' Technically this returns the number of "code points", in a string. One
# ' code point usually corresponds to one character, but not always. For example,
# ' an u with a umlaut might be represented as a single character or as the
# ' combination a u and an umlaut.
# '
# ' @inheritParams str_detect
# ' @return A numeric vector giving number of characters (code points) in each
# ' element of the character vector. Missing string have missing length.
# ' @seealso [stringi::stri_length()] which this function wraps.
# ' @export
# ' @examples
# ' str_length(letters)
# ' str_length(NA)
# ' str_length(factor("abc"))
# ' str_length(c("i", "like", "programming", NA))
str_length <- function ( string ) {
}
Когда вы roxygenise()
(или devtools::document()
), ваш пакет, эти комментарии будут автоматически преобразованы в .Rd
, который R использует для создания документации, которую вы видите, когда вводите ?str_length
.
Для начала сначала прочитайте vignette("roxygen2")
. Затем узнайте больше о конкретном компоненте пакета, который вы хотите создать:
Начните с vignette("rd")
чтобы узнать, как документировать свои функции с помощью roxygen2.
vignette("rd-other")
обсуждает, как документировать другие вещи, такие как наборы данных, сам пакет и различные части, используемые ООП-системами R.
vignette("rd-formatting")
предоставляет подробную информацию о поддержке roxygen2 rmarkdown.
vignette("reuse")
демонстрирует инструменты, доступные для повторного использования документации в нескольких местах.
vignette("namespace")
описывает, как создать файл NAMESPACE
, как работает пространство имен в R и как вы можете использовать roxygen2, чтобы точно определить, что нужно и что предоставляет ваш пакет.
Поле Collate
в DESCRIPTION
см. в разделе ?update_collate()
.