Next: , Previous: , Up: Hacking   [Contents][Index]

A.4 Adding export back-ends

Org 8.0 comes with a completely rewritten export engine which makes it easy to write new export back-ends, either from scratch, or from deriving them from existing ones.

Your two entry points are respectively org-export-define-backend and org-export-define-derived-backend. To grok these functions, you should first have a look at ox-latex.el (for how to define a new back-end from scratch) and ox-beamer.el (for how to derive a new back-end from an existing one.

When creating a new back-end from scratch, the basic idea is to set the name of the back-end (as a symbol) and an an alist of elements and export functions. On top of this, you will need to set additional keywords like :menu-entry (to display the back-end in the export dispatcher), :export-block (to specify what blocks should not be exported by this back-end), and :options-alist (to let the user set export options that are specific to this back-end.)

Deriving a new back-end is similar, except that you need to set :translate-alist to an alist of export functions that should be used instead of the parent back-end functions.

For a complete reference documentation, see the Org Export Reference on Worg.