
This page lists the contributed packages to Org-mode, with links to
available documentation. Most of these packages are located in the
/contrib/ directory of the Org distribution. Some have made it into
the core by now, but we keep the documentation here because it is more
extensive than what is available in the manual. If no documentation
link is present, see the file header of the package -- it will
hopefully have some documentation.
contrib/
- docco side-by-side annotated code export to HTML
- The
docco
tool (see
http://jashkenas.github.com/docco/) generates HTML from JavaScript
source code providing an attractive side-by-side display of source
code and comments. This file (see [[repofile:contrib/scripts/org-docco.org][contrib/scripts/org-docco.org]])
generates the same type of output from Org-mode documents with code
embedded in code blocks. For example org-docco output see
http://eschulte.github.com/org-docco/org-docco.html.
- org-annotate-file.el -- annotate a file with org syntax ::
The annotation is in a separate file, with links back to the
annotated file. Written by /Philip Jackson/.
[[repofile:contrib/lisp/org-annotate-file.el][Link to raw file]].
- org-bibtex-extras.el -- extras for working with org-bibtex entries ::
Written by /Eric Schulte/.
[[repofile:contrib/lisp/org-bibtex-extras.el][Link to raw file]].
- org-bookmark.el -- support for links to Emacs bookmarks ::
Written by /Tokuya Kameshima/.
[[repofile:contrib/lisp/org-bookmark.el][Link to raw file]].
- org-bullets.el -- Show bullets in org-mode as UTF-8 characters ::
Written by /sabof/
[[repofile:contrib/lisp/org-bullets.el][Link to raw file.]]
::
Reset checklists in repeating entries. Written by /James TD Smith/.
[[repofile:contrib/lisp/org-checklist.el][Link to raw file]].
::
Org-choose helps documenting a decision-making process by using
TODO keywords for different degrees of /chosenness/, and by
automatically keeping a set of alternatives in a consistent state.
Writen by /Tom Breton/.
[[repofile:contrib/lisp/org-choose.el][Link to raw file]].
::
Collect and process properties into a table.
Written by /Eric Schulte/.
[[repofile:contrib/lisp/org-collector.el][Link to raw file]].
- org-colview-xemacs.el -- Column View in Org-mode, XEmacs-specific version ::
Written by /Carsten Dominik /
[[repofile:contrib/lisp/org-colview-xemacs.el][Link to raw file.]]
::
Make TODO state changes in one entry trigger changes in another, or
be blocked by the state of another entry. Also, easily create
chains of TODO items with exactly one active item at any time.
Written by /Carsten Dominik/.
[[repofile:contrib/lisp/org-depend.el][Link to raw file]].
::
Items in org-mode outlines can be used as flashcards. The user can conduct
interactive "drill sessions" to memorize the material in a set of
flashcards; cards are scheduled for review using the spaced
repetition algorithms popularised by [[http://supermemo.com/index.htm][SuperMemo]] and similar programs. Numerous
flashcard types are defined, and the user can add their own card types
using elisp.
Written by /Paul Sexton/.
[[repofile:contrib/lisp/org-drill.el][Link to raw file]].
- org-elisp-symbol.el -- Org links to emacs-lisp symbols. ::
This can create annotated links that exactly point to the definition
location of a variable of function.
Written by /Bastien Guerry/.
[[repofile:contrib/lisp/org-elisp-symbol.el][Link to raw file]].
- org-eww.el -- Support link/copy/paste from eww to Org-mode ::
Makes it possible to store an org-link to the url of an eww-buffer.
The second feature is to copy a region from eww keeping the links.
Written by /Marco Wahl/.
[[repofile:contrib/lisp/org-eww.el][Link to raw file]].
- org-expiry.el -- expiry mechanism for Org entries ::
Written by /Bastien Guerry/.
[[repofile:contrib/lisp/org-expiry.el][Link to raw file]].
::
This package adds new link types to link to specific versions of a
file, which will be checked out when the link is activated.
Written by /Reimar Finken/.
[[repofile:contrib/lisp/org-git-link.el][Link to raw file]].
- org-index.el -- a personal index for org ::
Fast search for selected org nodes and things outside of org.
org-index creates and updates an index table with keywords;
each line either points to a heading in org, references something
outside or carries a snippet of text to yank. When searching the
index, the set of matching lines is updated with every keystroke;
results are sorted by usage count and date, so that frequently
used entries appear first in the list of results. References are
decorated numbers (e.g. 'R237' or '--455--'); they are well
suited to be used outside of org, e.g. in folder names, ticket
systems or on printed documents.
Watch [[http://2484.de/org-index.html][the Screencast]] or view [[repofile:contrib/lisp/org-index.el][the Source]].
- org-interactive-query.el -- interactive modification of tags queries ::
After running a general query in Org, this package allows to narrow
down the results by adding more tags or keywords. Written by
/Christopher League/.
[[repofile:contrib/lisp/org-interactive-query.el][Link to raw file]].
- org-invoice.el -- help manage client invoices ::
Written by /Peter Jones/.
[[repofile:contrib/lisp/org-invoice.el][Link to raw file]].
- org-jira.el -- add a jira:ticket protocol to Org ::
Written by /Jonathan Arkell/.
[[repofile:contrib/lisp/org-jira.el][Link to raw file]].
- org-learn.el -- Implements SuperMemo's incremental learning algorithm ::
Written by /John Wiegley/.
[[repofile:contrib/lisp/org-learn.el][Link to raw file]].
::
Written by /Christopher Suckling/.
[[repofile:contrib/lisp/org-mac-iCal.el][Link to raw file]].
::
Grab the current link or selection from an open mac application and
insert it as a hyperlink at point in an org-mode document. Written
by /Anthony Lander/, /John Wiegley/ and /Christopher Suckling/.
This file replaces the earlier org-mac-message.el and
org-mac-link-grabber.el.
[[repofile:contrib/lisp/org-mac-link.el][Link to raw file]].
- org-mairix.el -- hook mairix search into Org for different MUAs ::
Written by /Georg C. F. Greve/.
[[repofile:contrib/lisp/org-mairix.el][Link to raw file]].
- org-man.el -- support for links to manpages in Org-mode. ::
Written by /Carsten Dominik/.
[[repofile:contrib/lisp/org-man.el][Link to raw file]].
- org-mew.el -- Support for links to Mew messages from within Org-mode ::
Written by /Tokuya Kameshima/
[[repofile:contrib/lisp/org-mew.el][Link to raw file.]]
::
org-mime
can be used to send HTML email using Org-mode HTML export.
This approximates a WYSiWYG HTML mail editor from within Emacs, and
can be useful for sending tables, fontified source code, and inline
images in email. Written by Eric Schulte.
Link to raw file.
- org-mtags.el -- support for some Muse-like tags in Org-mode ::
This package allows you to write == and == and other
syntax copied from Emacs Muse, right inside an Org file. The goal
here is to make it easy to publish the same file using either
org-publish or Muse. Written by /Carsten Dominik/.
[[repofile:contrib/lisp/org-mtags.el][Link to raw file]].
- org-notify.el -- notifications for Org-mode ::
Written by /Peter Münster/.
[[repofile:contrib/lisp/org-notify.el][Link to raw file]].
This package looks for todo-entries with deadline in your agenda files.
For such entries, you can get configurable reminders:
notification-pop-ups, emails, noise, and so on. You can define various
notification-types, each one with its own actions and timings. Each
todo-entry can have its own notification-type, defined by a property. For
some notification actions (pop-ups) it's possible to mark something
"done", or to shift the deadline just by one mouse-click.
- org-notmuch.el -- support for links to notmuch messages ::
Written by /Matthieu Lemerre/.
[[repofile:contrib/lisp/org-notmuch.el][Link to raw file]].
- org-panel.el -- simplified and display-aided access to some Org commands ::
Written by /Lennart Borgman/.
[[repofile:contrib/lisp/org-panel.el][Link to raw file]].
- org-registry.el -- a registry for Org links ::
Find out from where links point to a given file or location.
Written by /Bastien Guerry/.
[[repofile:contrib/lisp/org-registry.el][Link to raw file]].
- org-screen.el -- visit screen sessions through Org-mode links ::
Written /Andrew Hyatt/.
[[repofile:contrib/lisp/org-screen.el][Link to raw file]].
- org-screenshot.el -- Take and manage screenshots in Org-mode files ::
Written by /Max Mikhanosha/
[[repofile:contrib/lisp/org-screenshot.el][Link to raw file.]]
- org-sudoku.el -- Create and solve SUDOKU games in Org tables ::
Written by /Carsten Dominik/.
[[repofile:contrib/lisp/org-sudoku.el][Link to raw file]]. ::
- org-toc.el -- table of contents in a separate buffer ::
With fast access to sections and easy visibility cycling.
Written by /Bastien Guerry/.
[[repofile:contrib/lisp/org-toc.el][Link to raw file]].
- org-velocity.el -- something like Notational Velocity for Org ::
Written by /Paul M. Rodriguez/.
[[repofile:contrib/lisp/org-velocity.el][Link to raw file]].
- org-vm.el -- Support for links to VM messages from within Org-mode ::
Written by /Carsten Dominik/
[[repofile:contrib/lisp/org-vm.el][Link to raw file.]]
::
Written by /Carsten Dominik/.
[[repofile:contrib/lisp/org-wikinodes.el][Link to raw file]].
- org-wl.el -- Support for links to Wanderlust messages from within Org-mode ::
Written by /Tokuya Kameshima/ and /David Maus/
[[repofile:contrib/lisp/org-wl.el][Link to raw file.]]
Exporter
See
.
- htmlize.el -- convert buffer text and decorations to HTML ::
Written by /Hrvoje Niksic/.
[[repofile:contrib/lisp/htmlize.el][Link to raw file]].
- ox-bibtex.el -- Export bibtex fragments ::
Formerly known as /org-exp-bibtex.el/.
Written by /Taru Karttunen/.
[[repofile:contrib/lisp/ox-bibtex.el][Link to raw file]].
- ox-confluence.el -- Confluence Wiki Back-End for Org Export Engine ::
Written by /Sébastien Delafond/.
[[repofile:contrib/lisp/ox-confluence.el][Link to raw file]].
- ox-deck.el -- deck.js Presentation Back-End for Org Export Engine ::
Written by /Rick Frankel/.
[[repofile:contrib/lisp/ox-decl.el][Link to raw file]].
- ox-freemind.el -- Freemind Mindmap Back-End for Org Export Engine ::
Written by /Jambunathan K/.
[[repofile:contrib/lisp/ox-freemind.el][Link to raw file]].
::
Written by /Nicolas Goaziou/ and /Luis R Anaya/.
[[repofile:contrib/lisp/ox-groff.el][Link to raw file]].
::
Written by Nicolas Goaziou.
[[http://gpl.coulmann.de/scrlttr2.html][Scrlttr2]] letters in Org.
- ox-rss.el -- RSS 2.0 Back-End for Org Export Engine ::
Written by /Bastien Guerry/.
[[repofile:contrib/lisp/ox-rss.el][Link to raw file]].
- ox-s5.el -- S5 Presentation Back-End for Org Export Engine ::
Written by /Rick Frankel/.
[[repofile:contrib/lisp/ox-s5.el][Link to raw file]].
- ox-taskjuggler.el -- TaskJuggler Back-End for Org Export Engine ::
See [[file:../org-tutorials/org-taskjuggler.org][Tutorial]].
Written by /Christian Egli/ and /Nicolas Goaziou/.
[[repofile:contrib/lisp/ox-taskjuggler.el][Link to raw file]].
- org-static-mathjax.el -- Muse-like tags in Org-mode ::
Written by /Jan Böker/.
[[repofile:contrib/lisp/org-static-mathjax.el][Link to raw file]].
Babel
- ob-eukleides.el -- Org-babel functions for eukleides evaluation ::
Written by /Luis Anaya/
[[repofile:contrib/lisp/ob-eukleides.el][Link to raw file.]]
- ob-fomus.el -- Org-babel functions for fomus evaluation ::
Written by /Torsten Anders/
[[repofile:contrib/lisp/ob-fomus.el][Link to raw file.]]
- ob-julia.el -- org-babel functions for julia code evaluation ::
Written by /G. Jay Kerns/, based on ob-R.el.
[[repofile:contrib/lisp/ob-julia.el][Link to raw file.]]
- ob-mathomatic.el -- Org-babel functions for mathomatic evaluation ::
Written by /Eric S Fraga/ and /Eric Schulte/ and /Luis Anaya (Mathomatic)/
[[repofile:contrib/lisp/ob-mathomatic.el][Link to raw file.]]
- ob-oz.el -- Org-babel functions for Oz evaluation ::
Written by /Torsten Anders/ and /Eric Schulte/
[[repofile:contrib/lisp/ob-oz.el][Link to raw file.]]
- ob-tcl.el -- Org-babel functions for tcl evaluation ::
Written by /Dan Davison/ and /Eric Schulte/ and /Luis Anaya/
[[repofile:contrib/lisp/ob-tcl.el][Link to raw file.]]
External
- org-auto-shorten-url.el
- By Neil Smithline. Automatically shorten URLs
in `org-mode' using Bit.ly or a link shortener of your choice. See
the comment in the code to make sure you load the needed dependancies.
::
This add-on by /Christian Fortin/ helps you build collections from
your Org buffer and gather data in tables. Every item identified as a
component will be totalized in a temporary database, from which you
can extract useful information, such as the number of item per
section. You should find here all you would expect from a BOM of a
professionnal CAD software.
[[https://github.com/Frozenlock/Org-Bill-of-materials][Link to raw file]]
- org-magit -- basic support for magit links ::
Written by /Yann Hodique/.
- org-occur-goto.el -- search open org buffers with an occur interface ::
Usage: M-x oog, then start typing. Select from the occur matches with
up/down/pgup/pgdown and press enter (you can navigate the history with
M-p/M-n). The search string must be at least 3 characters long (by
default).
- org-search-goto.el -- Use search to go to locations in your org buffers ::
Usage: M-x osg, then start typing. Select from the matches with
up/down/pgup/pgdown and press enter to go that location (you can navigate
the history with M-p/M-n). If the search string contains several strings
separated by spaces then these substrings can appear in any order in the
results. See the [[http://article.gmane.org/gmane.emacs.orgmode/49887][announcement]] on the list.
- org-search-goto-ml.el -- Use multiline search to go to locations in your org buffers ::
Usage: M-x osg, then start typing. Select from the matches with
up/down/pgup/pgdown and press enter to go that location (you can navigate
the history with M-p/M-n). If the search string contains several strings
separated by spaces then these substrings can appear in any order in the
results. The search handles an org heading and its text as one block, so
the substrings can match in any part of an org entry. If the heading is
not matching, only the body, the heading is added to the results anyway
to indicated which entry is matched.
- org-link-minor-mode.el -- Enables Org links in non org-mode buffers ::
Written by /Sean O'Halpin/.
[[https://github.com/seanohalpin/org-link-minor-mode/blob/master/org-link-minor-mode.el][Link to github file]] and the github [[https://github.com/seanohalpin/org-link-minor-mode][project page]].
- org-impress-js.el -- impress.js export for Org mode ::
Written by /kinjo/.
Link to the github [[https://github.com/kinjo/org-impress-js.el][project page]].
- org-weights.el -- display the "weight" of a headline, with the # of sub headlines ::
Written by [[http://pinard.progiciels-bpi.ca/index.html][François Pinard]].
Link to the github [[https://github.com/pinard/org-weights][project page]].
Moved to core
::
The embedded code evaluation and literate programming subsystem
written by /Eric Schulte/ and /Dan Davison/ \\
Org Babel is now part of the Org core and [[https://orgmode.org/manual/Working-With-Source-Code.html#Working-With-Source-Code][documented in the manual]].
See also [[Babel]] for contrib files regarding org-babel.
- org-element.el -- Parser and applications for Org syntax ::
Written by /Nicolas Goaziou/.
[[repofile:contrib/lisp/org-element.el][Link to raw file]].
::
Org-export-blocks allows for the pre-processing or blocks in
org-mode files to create images, or specially formatted HTML or
LaTeX output. Written by /Eric Schulte/. \\
Org-exp-blocks is now part of the Org core.
[[repofile:lisp/org-exp-blocks.el][Link to raw file]].
- org-export.el -- Generic Export Engine For Org ::
Generic export engine for Org built on Org Elements.
Written by /Nicolas Goaziou/.
[[repofile:contrib/lisp/org-export.el][Link to raw file.]] \\
Back-ends for /org-export.el/ (ascii, html, latex, odt, publish) were
currently located in the /EXPERIMENTAL/ directory of the Org
distribution. They are now a part of org-mode core as ox.el and ox-\ast{}.el since 8.0.
::
Read RSS feeds from the web, add new items to Org files, and trigger
actions when items have changed.
Written by /Carsten Dominik/.
[[repofile:lisp/org-feed.el][Link to raw file]]. \\
This module is part of the Org core [[https://orgmode.org/manual/RSS-Feeds.html#RSS-Feeds"][documented in the manual]].
::
org-protocol intercepts calls from emacsclient to trigger custom
actions without external dependencies. Only one protocol has to be
configured with your external applications or the operating
system.\\
This package is part of the Org core and also [[https://orgmode.org/manual/Protocols.html#Protocols][documented in the manual]].
::
Written by /Dan Davison/.
[[https://code.orgmode.org/bzg/org-mode/raw/470fba6086
/contrib/lisp/org-R.el][Link to legacy raw file]]. \\
This modules has been superseded by the Org Babel functionality,
which is part of the Org core and [[https://orgmode.org/manual/Working-With-Source-Code.html#Working-With-Source-Code"][documented in the manual]].
::
Written by /Chris Gray/.
[[repofile:lisp/org-special-blocks.el][Link to raw file]]. \\
This package is part of the Org core.
Obsolete
::
Org-annotation-helper allows to create Org-mode links and
annotations while working in a browser, by simply clicking a
bookmarklet.
Written by /Bastien Guerry/ and /Daniel M German/.
[[https://code.orgmode.org/bzg/org-mode/raw/bb2b3f34f1
/contrib/lisp/org-annotation-helper.el][Link to legacy raw file]].\\
This module has been superseded by /org-protocol.el/, part
of the Org core, and [[https://orgmode.org/manual/Protocols.html#Protocols][documented in the manual]].
- HTML presentations from an Org file
- Several possibilities here:
*Note*: These were all written for the old exporter, and
will most likely not work with the new export framework.
For use with the new exporter, ox-s5.el (link to raw file) and
ox-deck.el (link to raw file), both by Rick Frankel, are
included in the contrib directory. The latest source and
documentation for both are at
https://github.com/cybercode/org-slides.
- org-browser-url.el -- bookmark from a browser into org links ::
Written by /Ross Patterson/.
[[https://code.orgmode.org/bzg/org-mode/raw/0b9b7d7b58
/contrib/lisp/org-browser-url.el][Link to legacy raw file]]. \\
This module has been superseded by /org-protocol.el/, part
of the Org core, and [[https://orgmode.org/manual/Protocols.html#Protocols][documented in the manual]].
- org-eval.el -- show evaluation result of code ::
The == tag, adapted from Emacs Wiki and Emacs Muse, allows
text to be included in a document that is the result of evaluating
some code. Other scripting languages like /perl/ can be
supported with this package as well.
Written by /Carsten Dominik/.
[[repofile:contrib/lisp/org-eval.el][Link to raw file]]. \\
This modules has been superseded by the Org Babel functionality,
which is part of the Org core and [[https://orgmode.org/manual/Working-With-Source-Code.html#Working-With-Source-Code][documented in the manual]].
::
Org-eval-light allows the execution of source code embedded in an
org-mode file. The results of the execution are placed into the
org-mode file. It is a reworking of Carsten's org-eval with the
goals of a more uniform syntax, safer default execution rules, and
increased ease of execution.
Written by /Eric Schulte/.
[[repofile:contrib/lisp/org-eval-light.el][Link to raw file]]. \\
This modules has been superseded by the Org Babel functionality,
which is part of the Org core and [[https://orgmode.org/manual/Working-With-Source-Code.html#Working-With-Source-Code][documented in the manual]].
::
Org-export-generic provides the ability to create an org file and
then export it to any given format you desire. This is done by
defining a set of variables that include prefixes and suffixes for
each line type (E.G., header, list item, etc ...) and then running
org-export-generic on the file to process it.
Written by /Wes Hardaker/.
[[repofile:contrib/lisp/org-export-generic.el][Link to raw file]].
- org2rem.el -- Convert org appointments into reminders for remind ::
Written by /Bastien Guerry/ and /Sharad Pratap/.
[[repofile:contrib/lisp/org2rem.el][Link to raw file]].
Maintenance
Keeping this list maintained is quite a challenge. Here are some elisp
functions to help with it. They require cl-lib (Emacs 24.3) and org-mode
with contrib/
(git).
(require 'cl-lib)
(defun worg-parse-contrib-index.org (&optional buffer)
"Return an alist of elisp file names.
The files are either documented, not-in-contrib, or undocumented.
TODO: Do not check files in sections except for \"contrib/\"."
(with-current-buffer (or buffer "index.org")
(let* ((items
(cl-remove-duplicates
(cl-reduce
#'(lambda (a b) (append a b))
(org-element-map
(org-element-parse-buffer)
'plain-list
#'(lambda (e)
(delq nil
(mapcar
(lambda (item)
(let ((title (nth 5 item)))
(when (and (stringp title)
(string-match "/\\([^/]+\\.el\\)/"
title))
(match-string 1 title))))
(org-element-property :structure e))))))))
(org-contrib-files
(directory-files
(expand-file-name "../contrib/lisp/"
(file-name-directory
(find-lisp-object-file-name #'org-mode
#'org-mode)))
nil "\\.el\\'" 'nosort)))
(list
(cons 'documented
(cl-union items org-contrib-files))
(cons 'not-in-contrib
(cl-set-difference items org-contrib-files :test #'string=))
(cons 'undocumented
(cl-set-difference org-contrib-files items :test #'string=))))))
(require 'lisp-mnt)
(defun worg-generate-missing-contrib-index (&optional index-buffer)
"Return a string containing auto formated entries for undocumented files."
(let* ((parsed (worg-parse-contrib-index.org index-buffer))
(missing (sort (cdr (assq 'undocumented parsed))
#'(lambda (a b) (not (string< a b)))))
(contrib-path (expand-file-name "../contrib/lisp/"
(file-name-directory
(find-lisp-object-file-name #'org-mode
#'org-mode))))
misc babel ox)
(dolist (i missing)
(push
(ignore-errors
(lm-with-file (expand-file-name i contrib-path)
(format "- /%s/ -- %s ::
Written by %s
[[repofile:contrib/lisp/%s][Link to raw file.]]\n\n"
i (lm-summary)
(mapconcat #'(lambda (a) (concat "/" (car a) "/"))
(lm-authors)
" and ")
i)))
(cond
((string-prefix-p "ox-" i) ox)
((string-prefix-p "ob-" i) babel)
(t misc))))
(concat
(apply #'concat misc)
"* Export\n"
(apply #'concat ox)
"* Babel\n"
(apply #'concat babel))))