Helper functions to retrieve various types of package information that can be put together as the full package documentation like a pkgdown website. These functions can be called inside any R Markdown document.

pkg_desc(name = detect_pkg())

pkg_news(
  name = detect_pkg(),
  path = detect_news(name),
  recent = 1,
  toc = TRUE,
  number_sections = TRUE,
  ...
)

pkg_code(
  path = attr(detect_pkg(), "path"),
  pattern = "[.](R|c|h|f|cpp)$",
  toc = TRUE,
  number_sections = TRUE,
  link = TRUE
)

pkg_citation(name = detect_pkg())

pkg_manual(
  name = detect_pkg(),
  toc = TRUE,
  number_sections = TRUE,
  overview = TRUE,
  examples = list()
)

Arguments

name

The package name (by default, it is automatically detected from the DESCRIPTION file if it exists in the current working directory or upper-level directories).

path

For pkg_news(), path to the NEWS.md file. If empty, news() will be called to retrieve the news entries. For pkg_code(), path to the package root directory that contains R/ and/or src/ subdirectories.

recent

The number of recent versions to show. By default, only the latest version's news entries are retrieved. To show the full news, set recent = 0.

toc

Whether to add section headings to the document TOC (when TOC has been enabled for the document).

number_sections

Whether to number section headings (when sections are numbered in the document).

...

Other arguments to be passed to news().

pattern

A regular expression to match filenames that should be treated as source code.

Whether to add links on the file paths of source code. By default, if a GitHub repo link is detected from the BugReports field of the package DESCRIPTION, GitHub links will be added to file paths. You can also provide a string template containing the placeholder %s (which will be filled out with the file paths via sprintf()), e.g., https://github.com/yihui/litedown/blob/main/%s.

overview

Whether to include the package overview page, i.e., the {name}-package.Rd page.

examples

A list of arguments to be passed to xfun::record() to run examples each help page, e.g., list(dev = 'svg', dev.args = list(height = 6)). If not a list (e.g., FALSE), examples will not be run.

Value

A character vector (HTML or Markdown) that will be printed as is inside a code chunk of an R Markdown document.

pkg_desc() returns an HTML table containing the package metadata.

pkg_news() returns the news entries.

pkg_code() returns the package source code under the R/ and src/ directories.

pkg_citation() returns the package citation in both the plain-text and BibTeX formats.

pkg_manual() returns all manual pages of the package in HTML.

Examples

if (FALSE) { # \dontrun{
litedown::pkg_desc()
litedown::pkg_news()
litedown::pkg_citation()
} # }