Learn R Programming

tools (version 3.5.2)

buildVignette: Build One Vignette

Description

Run Sweave (or other custom weave function) texi2dvi, and/or Stangle (or other custom tangle function) on one vignette.

This is the workhorse of R CMD Sweave.

Usage

buildVignette(file, dir = ".", weave = TRUE, latex = TRUE, tangle = TRUE, 
              quiet = TRUE, clean = TRUE, keep = character(),
              engine = NULL, buildPkg = NULL, encoding, ...)

Arguments

file

character; the vignette source file

dir

character; the working directory in which the intermediate and output files will be produced

weave

logical; should weave be run?

latex

logical; texi2pdf be run if weaving produces a .tex file?

tangle

logical; should tangle be run?

quiet

logical; run in quiet mode?

clean

logical; whether to remove some newly created, often intermediate, files. See details below.

keep

a list of file names to keep in any case when cleaning. Note that “target” files are kept anyway.

engine

NULL or character; name of vignette engine to use. Overrides any \VignetteEngine{} markup in the vignette.

buildPkg

NULL or character; an optional package in which to find the vignette engine.

encoding

the encoding to assume for the file. If not specified, it will be inferred from the file contents.

...

Additional arguments passed to weave and tangle.

Value

A character vector naming the files that have been produced.

Details

This function determines the vignette engine for the vignette (default utils::Sweave), then weaves and/or tangles the vignette using that engine. Finally, if clean is TRUE, newly created intermediate files (non “targets”, where these depend on the engine, etc, and not any in keep) will be deleted. If clean is NA, and weave is true, newly created intermediate output files (e.g., .tex) will not be deleted even if a .pdf file has been produced from them.

If buildPkg is specified, it will be loaded before the vignette is processed, and will be used as the default package in the search for a vignette engine, but an explicitly specified package in the vignette source (e.g., using \VignetteEngine{utils::Sweave} to specify the Sweave engine in the utils package) will override it. In contrast, if the engine argument is given, it will override the vignette source.

See Also

buildVignettes for building all vignettes in a package.