Set or Get a Vignette Processing Engine

Vignettes are normally processed by Sweave, but package writers may choose to use a different engine (e.g., one provided by the knitr, noweb or R.rsp packages). This function is used by those packages to register their engines, and internally by R to retrieve them.

utilities, documentation
vignetteEngine(name, weave, tangle, pattern = NULL,
	       package = NULL, aspell = list())

the name of the engine.


a function to convert vignette source files to PDF/HTML or intermediate LaTeX output.


a function to convert vignette source files to R code.


a regular expression pattern for the filenames handled by this engine, or NULL for the default pattern.


the package registering the engine. By default, this is the package calling vignetteEngine.


a list with element names filter and/or control giving the respective arguments to be used when spell checking the text in the vignette source file with aspell.


If weave is missing, vignetteEngine will return the currently registered engine matching name and package.

If weave is NULL, the specified engine will be deleted.

Other settings define a new engine. The weave and tangle functions must be defined with argument lists compatible with function(file, ...). Currently the ... arguments may include logical argument quiet and character argument encoding; others may be added in future. These are described in the documentation for Sweave and Stangle.

The weave and tangle functions should return the filename of the output file that has been produced. Currently the weave function, when operating on a file named <name> <pattern> must produce a file named <name>[.](tex|pdf|html). The .tex files will be processed by pdflatex to produce .pdf output for display to the user; the others will be displayed as produced. The tangle function must produce a file named <name>[.][rRsS] containing the executable R code from the vignette. The tangle function may support a split = TRUE argument, and then it should produce files named <name>.*[.][rRsS].

The pattern argument gives a regular expression to match the extensions of files which are to be processed as vignette input files. If set to NULL, the default pattern "[.][RrSs](nw|tex)$" is used.


If the engine is being deleted, NULL. Otherwise a list containing components


The name of the engine


The name of its package


The pattern for vignette input files


The weave function


The tangle function

See Also

Sweave and the ‘Writing R Extensions’ manual.

  • vignetteEngine
library(tools) # NOT RUN { str(vignetteEngine("Sweave")) # }
Documentation reproduced from package tools, version 3.5.0, License: Part of R 3.5.0

Community examples

Looks like there are no examples yet.