File: footnote.el.html
This file provides footnote[1] support for message-mode in emacsen.
footnote-mode is implemented as a minor mode.
[1] Footnotes look something like this. Along with some decorative
stuff.
;; TODO:
+ Reasonable Undo support.
- could use an apply entry in the buffer-undo-list to be warned when
a footnote we inserted is removed via undo.
- should try to handle the more general problem of deleting/removing
footnotes via standard editing commands rather than via footnote
commands.
+ more language styles.
+ The key sequence 'C-c ! a C-y C-c ! b' should auto-fill the
footnote in adaptive fill mode. This does not seem to be a bug in
adaptive-fill because it behaves that way on all point movements
+ Handle footnote mode elegantly in all modes, even if that means refusing to
accept the burden. For example, in a programming language mode, footnotes
should be commented.
+ Manually autofilling the first footnote should not cause it to
wrap into the footnote section tag.
+ Current solution adds a second newline after the section tag, so it is
clearly a separate paragraph. There may be stylistic objections to this.
+ Footnotes with multiple paragraphs should not have their first
line out-dented.
+ Upon leaving footnote area, perform an auto-fill on an entire
footnote (including multiple paragraphs), or on entire footnote area.
+ fill-paragraph takes arg REGION, but seemingly only when called
interactively.
+ At some point, it became necessary to change footnote-section-tag-regexp
to remove its trailing space. (Adaptive fill side-effect?)
+ useful for lazy testing
(setq footnote-narrow-to-footnotes-when-editing t)
(setq footnote-section-tag "Footnotes: ")
(setq footnote-section-tag-regexp "Footnotes\\\\(\\\\[.\\\\]\\\\)?:")
Defined variables (34)
footnote--markers-alist | List of (FN TEXT . POINTERS). |
footnote-align-to-fn-text | How to left-align footnote text. |
footnote-body-tag-spacing | Number of spaces separating a footnote body tag and its text. |
footnote-end-tag | String used to denote end of numbered footnote. |
footnote-english-lower | Lower case English alphabet. |
footnote-english-lower-regexp | Regexp of lower case English alphabet. |
footnote-english-upper | Upper case English alphabet. |
footnote-english-upper-regexp | Regexp for upper case English alphabet. |
footnote-latin-regexp | Regexp for Latin-1 footnoting characters. |
footnote-latin-string | String of Latin-1 footnoting characters. |
footnote-minor-mode-map | Keymap used for binding footnote minor mode. |
footnote-mode | Non-nil if Footnote mode is enabled. |
footnote-mode-hook | Hook run after entering or leaving ‘footnote-mode’. |
footnote-mode-line-string | String to display in modes section of the mode-line. |
footnote-mouse-highlight | Text property name to enable mouse over highlight. |
footnote-narrow-to-footnotes-when-editing | If non-nil, narrow to footnote text body while editing a footnote. |
footnote-numeric-regexp | Regexp for digits. |
footnote-prefix | Prefix key to use for Footnote commands in Footnote minor mode. |
footnote-prompt-before-deletion | If non-nil, prompt before deleting a footnote. |
footnote-roman-lower-list | List of roman numerals with their values. |
footnote-roman-lower-regexp | Regexp of roman numerals. |
footnote-roman-upper-list | List of roman numerals with their values. |
footnote-roman-upper-regexp | Regexp of roman numerals. Not complete. |
footnote-section-tag | Tag inserted at beginning of footnote section. |
footnote-section-tag-regexp | Regexp which indicates the start of a footnote section. |
footnote-signature-separator | Regexp used by Footnote mode to recognize signatures. |
footnote-spaced-footnotes | If non-nil, insert an empty line between footnotes. |
footnote-start-tag | String used to denote start of numbered footnote. |
footnote-style | Default style used for footnoting. |
footnote-style-alist | Styles of footnote tags available. |
footnote-style-number | Footnote style represented as an index into ‘footnote-style-alist’. |
footnote-unicode-regexp | Regexp for Unicode footnoting characters. |
footnote-unicode-string | String of Unicode footnoting characters. |
footnote-use-message-mode | If non-nil, assume Footnoting will be done in ‘message-mode’. |