Add ons for orgmode
This is the org-9-plus
branch. Use this with Release 9.0 or higher. It utilizes
the new versions of `org-babel-get-src-block-info’ and `org-babel-lob-get-info’.
If you are running on the `master’ branch this commit of Org mode is this first with new versions of those functions:
commit 9738da473277712804e0d004899388ad71c6b791 Author: Nicolas Goaziou <[email protected]> Date: Wed Feb 10 00:22:09 2016 +0100
- ox-ravel.org
- description and definition of backends to create
Sweave
,brew
,Rmd
, andhtml
style files. - demos.org
- demonstrations of various ravel features and use cases.
- test.org
- ERT unit tests of ravel features.
- example-1-Rnw.org
- includes an orgmode translation of example-1 from the
Sweave user’s manual. Exporting with
ravel-latex
produces a file very similar to the*.Rnw
code. - knitr-minimal-rhtml.org
- includes an orgmode translation of
knitr-minimal.Rhtml
from the the knitr demos page. - test-cases.org
- this sets up to allow parallel exports using
latex
and two derived backendsravel-latex
andravel-brew
and inspect thediffs
between them. - autodep.org
- orgmode translation of 017-auto-dependson.Rnw from knitr examples page illustrates dependency aware caching of computed objects.
- slidify-example.org
- how to use the
slidify
package to make slides. - markdown.org
- describes features of the
ravel-markdown
backend. - markdown.Rmd
- the exported version of
markdown.org
.
Bugs happen. Please let me know if you encounter a bug or if something seems to break that once worked as that might indicate a change in the exporter or Babel that I need to keep up with.
The example *.org
files should always work!
Orgmode is for keeping notes, maintaining TODO lists, doing project planning, and authoring with a fast and effective plain-text system. The same org document can be used to create LaTeX, HTML, plain ASCII, and various other formats upon export.
Babel is Org-mode’s ability to execute source code within Org-mode documents. It is powerful and flexible and a useful tool for generating reproducible research reports as outlined in the report : Eric Schulte, Dan Davison, Thomas Dye, and Carsten Dominik. A Multi-Language Computing Environment for Literate Programming and Reproducible Research. Journal of Statistical Software. 46(3) Jan 2012. Source code blocks can be editted in place or in a language major-mode edit buffer containing the body of the code block. And for R blocks, ESS
is fully functional.
There are many markup and report and document generating packages and functions for R. A useful overview of them is at CRAN Task View for Reproducible Research
Several to which this software is aimed are
- Sweave
- brew
- knitr/rmarkdown/quarto
Each approach (orgmode as report generator vs Sweave-like report generators) has its own strengths and weaknesses.
orgmode makes it really easy to track things and to build code incrementally.
Sweave has several dependency aware caching systems in R that are simple and powerful. Also, there are some nice formatting tools available and more coming into use. And many of them are hard (or maybe impossible) to use when Babel is doing the final report generation. There are terrific possibilities presented by R packages like =knitr= and =pander=.
The Org export engine (see the Org manual Exporting section or the Org Export Reference Documentation) offers the possibility to have a workstyle in which an orgmode master document contains a subtree with text and code blocks that when exported becomes an Sweave or brew style document that when run produces LaTeX, HTML, and/or some other markup language. By including caching options in those documents the development process becomes easy to organize, restarting work after a break is just a matter of rerunning the document to load the cached objects and libraries, then switching to the orgmode master to try out some new code, reorganize the presentation, and so on.