#!/usr/bin/env Rscript
if (!nzchar(Sys.which('lyx')) || system('lyx -version') != 0L) q()
call_lyx = function(file) {
res = sapply(sprintf('lyx -e %s %s', c('knitr', 'r', 'pdf2'), file),
system, ignore.stdout = TRUE, USE.NAMES = FALSE)
unlink(sub('\\.lyx$', '.R', file))
stopifnot(identical(res, integer(3L)))
}
for (i in list.files(pattern = '\\.lyx$')) {
message(i)
call_lyx(i)
flush.console()
}
knit_script = normalizePath('../bin/knit', mustWork = TRUE)
knit_cmd = function(file) {
paste('Rscript', shQuote(knit_script), shQuote(file))
}
test_cmd = function(cmd) {
stopifnot(identical(system(cmd, ignore.stdout = TRUE), 0L))
}
for (i in list.files(pattern = '\\.Rmd')) {
message(i)
cmd = if (i == 'knitr-minimal.Rmd') {
sprintf("Rscript -e 'library(knitr);opts_knit$set(base.url=\"http://animation.r-forge.r-project.org/ideas/\");knit(\"%s\")'", i)
} else knit_cmd(i)
test_cmd(cmd)
flush.console()
}
test_cmd(sprintf("Rscript -e 'library(knitr);spin(\"knitr-spin.R\", precious=TRUE)'"))
setwd('child')
for (i in c('knitr-main.Rnw', 'knitr-parent.Rnw')) {
test_cmd(knit_cmd(i))
}
unlink('*.tex')
test_cmd(knit_cmd('knitr-main.Rmd'))
setwd('..')
file.remove('child/knitr-main.html')
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.