X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/7be1c708c5abc7dea388d45454bd19bff07b7943..4dc7c8d5795458e89d19b59f64760e155c2cd70b:/lisp/mail/footnote.el diff --git a/lisp/mail/footnote.el b/lisp/mail/footnote.el index 8dac3be0e5..e342e0ae97 100644 --- a/lisp/mail/footnote.el +++ b/lisp/mail/footnote.el @@ -1,6 +1,6 @@ ;;; footnote.el --- footnote support for message mode -*- coding: utf-8;-*- -;; Copyright (C) 1997, 2000-2011 Free Software Foundation, Inc. +;; Copyright (C) 1997, 2000-2012 Free Software Foundation, Inc. ;; Author: Steven L Baur ;; Keywords: mail, news @@ -35,9 +35,8 @@ ;;; Code: -(eval-when-compile - (require 'cl) - (defvar filladapt-token-table)) +(eval-when-compile (require 'cl-lib)) +(defvar filladapt-token-table) (defgroup footnote nil "Support for footnotes in mail and news messages." @@ -126,10 +125,12 @@ has no effect on buffers already displaying footnotes." :type 'string :group 'footnote) -(defvar footnote-signature-separator (if (boundp 'message-signature-separator) - message-signature-separator - "^-- $") - "*String used to recognize .signatures.") +(defcustom footnote-signature-separator (if (boundp 'message-signature-separator) + message-signature-separator + "^-- $") + "Regexp used by Footnote mode to recognize signatures." + :type 'regexp + :group 'footnote) ;;; Private variables @@ -294,14 +295,14 @@ Use a range of Latin-1 non-ASCII characters for footnoting." ;; Unicode (defconst footnote-unicode-string "⁰¹²³⁴⁵⁶⁷⁸⁹" - "String of unicode footnoting characters.") + "String of Unicode footnoting characters.") (defconst footnote-unicode-regexp (concat "[" footnote-unicode-string "]+") - "Regexp for unicode footnoting characters.") + "Regexp for Unicode footnoting characters.") (defun Footnote-unicode (n) "Unicode footnote style. -Use unicode characters for footnoting." +Use Unicode characters for footnoting." (let (modulus result done) (while (not done) (setq modulus (mod n 10) @@ -348,7 +349,7 @@ buffer use the command `Footnote-set-style'." ;;; Style utilities & functions (defun Footnote-style-p (style) - "Return non-nil if style is a valid style known to footnote-mode." + "Return non-nil if style is a valid style known to `footnote-mode'." (assq style footnote-style-alist)) (defun Footnote-index-to-string (index) @@ -642,12 +643,12 @@ If the variable `footnote-narrow-to-footnotes-when-editing' is set, the buffer is narrowed to the footnote body. The restriction is removed by using `Footnote-back-to-message'." (interactive "*P") - (let (num) - (if footnote-text-marker-alist - (if (< (point) (cadar (last footnote-pointer-marker-alist))) - (setq num (Footnote-make-hole)) - (setq num (1+ (caar (last footnote-text-marker-alist))))) - (setq num 1)) + (let ((num + (if footnote-text-marker-alist + (if (< (point) (cl-cadar (last footnote-pointer-marker-alist))) + (Footnote-make-hole) + (1+ (caar (last footnote-text-marker-alist)))) + 1))) (message "Adding footnote %d" num) (Footnote-insert-footnote num) (insert-before-markers (make-string footnote-body-tag-spacing ? )) @@ -788,9 +789,14 @@ being set it is automatically widened." ;;;###autoload (define-minor-mode footnote-mode - "Toggle footnote minor mode. -This minor mode provides footnote support for `message-mode'. To get -started, play around with the following keys: + "Toggle Footnote mode. +With a prefix argument ARG, enable Footnote mode if ARG is +positive, and disable it otherwise. If called from Lisp, enable +the mode if ARG is omitted or nil. + +Footnode mode is a buffer-local minor mode. If enabled, it +provides footnote support for `message-mode'. To get started, +play around with the following keys: \\{footnote-minor-mode-map}" :lighter footnote-mode-line-string :keymap footnote-minor-mode-map