Next: , Previous: Blocks, Up: Document Structure

2.10 Footnotes

Org mode supports the creation of footnotes. In contrast to the footnote.el package, Org mode's footnotes are designed for work on a larger document, not only for one-off documents like emails. The basic syntax is similar to the one used by footnote.el, i.e., a footnote is defined in a paragraph that is started by a footnote marker in square brackets in column 0, no indentation allowed. If you need a paragraph break inside a footnote, use the LaTeX idiom ‘\par’. The footnote reference is simply the marker in square brackets, inside text. For example:

     The Org homepage[fn:1] now looks a lot better than it used to.
     ...
     [fn:1] The link is: http://orgmode.org

Org mode extends the number-based syntax to named footnotes and optional inline definition. Using plain numbers as markers (as footnote.el does) is supported for backward compatibility, but not encouraged because of possible conflicts with LaTeX snippets (see Embedded LaTeX). Here are the valid references:

[1]
A plain numeric footnote marker. Compatible with footnote.el, but not recommended because something like ‘[1]’ could easily be part of a code snippet.
[fn:name]
A named footnote reference, where name is a unique label word, or, for simplicity of automatic creation, a number.
[fn:: This is the inline definition of this footnote]
A LaTeX-like anonymous footnote where the definition is given directly at the reference point.
[fn:name: a definition]
An inline definition of a footnote, which also specifies a name for the note. Since Org allows multiple references to the same note, you can then use [fn:name] to create additional references.

Footnote labels can be created automatically, or you can create names yourself. This is handled by the variable org-footnote-auto-label and its corresponding #+STARTUP keywords. See the docstring of that variable for details.

The following command handles footnotes:

C-c C-x f
The footnote action command.

When the cursor is on a footnote reference, jump to the definition. When it is at a definition, jump to the (first) reference.

Otherwise, create a new footnote. Depending on the variable org-footnote-define-inline1, the definition will be placed right into the text as part of the reference, or separately into the location determined by the variable org-footnote-section.

When this command is called with a prefix argument, a menu of additional options is offered:

          s   Sort the footnote definitions by reference sequence.  During editing,
              Org makes no effort to sort footnote definitions into a particular
              sequence.  If you want them sorted, use this command, which will
              also move entries according to org-footnote-section.  Automatic
              sorting after each insertion/deletion can be configured using the
              variable org-footnote-auto-adjust.
          r   Renumber the simple fn:N footnotes.  Automatic renumbering
              after each insertion/deletion can be configured using the variable
              org-footnote-auto-adjust.
          S   Short for first r, then s action.
          n   Normalize the footnotes by collecting all definitions (including
              inline definitions) into a special section, and then numbering them
              in sequence.  The references will then also be numbers.  This is
              meant to be the final step before finishing a document (e.g., sending
              off an email).  The exporters do this automatically, and so could
              something like message-send-hook.
          d   Delete the footnote at point, and all definitions of and references
              to it.

Depending on the variable org-footnote-auto-adjust2, renumbering and sorting footnotes can be automatic after each insertion or deletion.


C-c C-c
If the cursor is on a footnote reference, jump to the definition. If it is a the definition, jump back to the reference. When called at a footnote location with a prefix argument, offer the same menu as C-c C-x f.
C-c C-o or mouse-1/2
Footnote labels are also links to the corresponding definition/reference, and you can use the usual commands to follow these links.

Footnotes

[1] The corresponding in-buffer setting is: #+STARTUP: fninline or #+STARTUP: nofninline

[2] the corresponding in-buffer options are fnadjust and nofnadjust.