Engines of other languages
This object controls how to execute the code from languages other than R
(when the chunk option engine
is not 'R'
). Each component in
this object is a function that takes a list of current chunk options
(including the source code) and returns a character string to be written into
the output.
knit_engines
An object of class list
of length 6.
The engine function has one argument options
: the source code of the
current chunk is in options$code
. Usually we can call external
programs to run the code via system2
. Other chunk options are
also contained in this argument, e.g. options$echo
and
options$eval
, etc.
In most cases, options$engine
can be directly used in command line to
execute the code, e.g. python
or ruby
, but sometimes we may
want to specify the path of the engine program, in which case we can pass it
through the engine.path
option. For example, engine='ruby',
engine.path='/usr/bin/ruby1.9.1'
. Additional command line arguments can be
passed through options$engine.opts
, e.g. engine='ruby',
engine.opts='-v'
.
See str(knitr::knit_engines$get())
for a list of built-in language
engines.
The Leiningen engine lein
requires lein-exec plugin; see
https://github.com/yihui/knitr/issues/1176 for details.
Usage: https://yihui.org/knitr/objects/; examples: https://yihui.org/knitr/demo/engines/
knit_engines$get("python") knit_engines$get("awk") names(knit_engines$get())
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.