rasciidoc: Render an 'asciidoc' File

View source: R/rasciidoc.R

rasciidocR Documentation

Render an asciidoc File

Description

This is the basic interface to asciidoc. Not more than a call to system2 and checks on asciidoc and source-highlight. You should usually not call it directly, see render for a wrapper.

Usage

rasciidoc(
  file_name,
  ...,
  write_to_disk = getOption("write_to_disk"),
  enforce_requirements = getOption("enforce_requirements"),
  git_checkout_asciidoc_tag = NA
)

Arguments

file_name

The file to run asciidoc on.

...

arguments passed to asciidoc via system2.

write_to_disk

Write to disk? See Warning.

enforce_requirements

Should system requirements be enforced (CRAN requires packages to pass checks if system requirements (external commands) are not met)? Set to TRUE to enforce.

git_checkout_asciidoc_tag

If asciidoc is not installed, it is loaded from https://github.com/. Depending on your python version (python2 or python3), asciidoc for python2 or python3 is loaded. You may specify a tag to use with the repository. Either pass

  1. a tag number as a string ("9.1.0", for example),

  2. NULL to force the latest tagged version, or

  3. NA

Don't mind, just stick with the default. You would have to know which python version will be used.

Value

Invisibly TRUE or FALSE, depending on success.

Warning

Due to the CRAN policy of not writing "anywhere else on the file system apart from the R session's temporary directory", we work on a temporary copy of file_name. Thus all internal sourcing and internal links will be broken and any output is written to tempdir(). Set the option "write_to_disk" to TRUE (using
options(write_to_disk = TRUE)
to bypass this. You may want to include the above line into your ‘~/.Rprofile’.

See Also

render

Examples

# CRAN complains about elapsed times
if (fritools::is_running_on_fvafrcu_machines()) {
    wd <- file.path(tempdir(), "rasciidoc")
    dir.create(wd)
    file  <- system.file("files", "minimal", "knit.asciidoc",
                         package = "rasciidoc")
    file.copy(file, wd)
    r <- rasciidoc(file_name = file.path(wd, basename(file)),
                   write_to_disk = getOption("write_to_disk"), "-b html")
    if (interactive()) browseURL(attr(r, "info")[["output"]])
    if (isTRUE(getOption("write_to_disk"))) {
        dir(wd, full.names = TRUE)
    } else {
        dir(tempdir(), full.names = TRUE)
    }
    unlink(wd, recursive = TRUE)
}

rasciidoc documentation built on Aug. 16, 2023, 1:09 a.m.