diff options
Diffstat (limited to 'lisp/mail/supercite.el')
-rw-r--r-- | lisp/mail/supercite.el | 36 |
1 files changed, 19 insertions, 17 deletions
diff --git a/lisp/mail/supercite.el b/lisp/mail/supercite.el index 0dacfc3402d..e37c7a0149f 100644 --- a/lisp/mail/supercite.el +++ b/lisp/mail/supercite.el @@ -34,7 +34,6 @@ (require 'regi) -(require 'sendmail) ;; For mail-header-end. ;; start user configuration variables ;; vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv @@ -1484,18 +1483,22 @@ non-nil." "Does nothing. Use this instead of nil to get a blank header." ()) -(defun sc-no-blank-line-or-header() +(declare-function mh-in-header-p "mh-utils" ()) + +(defun sc-no-blank-line-or-header () "Similar to `sc-no-header' except it removes the preceding blank line." - (if (not (bobp)) - (if (and (eolp) - (progn (forward-line -1) - (or (= (point) (mail-header-end)) - (and (eq major-mode 'mh-letter-mode) - (with-no-warnings - (mh-in-header-p)))))) - (progn (forward-line) - (let ((kill-lines-magic t)) - (kill-line)))))) + (and (not (bobp)) + (eolp) + (progn (forward-line -1) + (or (= (point) + (save-excursion + (rfc822-goto-eoh) + (line-beginning-position 2))) + (and (eq major-mode 'mh-letter-mode) + (mh-in-header-p)))) + (progn + (forward-line) + (kill-line)))) (defun sc-header-on-said () "\"On <date>, <from> said:\" unless: @@ -1616,21 +1619,20 @@ error occurs." (cadr err) sc-eref-style) (beep)))))) -(defun sc-electric-mode (&optional arg) - " -Mode for viewing Supercite reference headers. Commands are: +(defun sc-electric-mode (&optional style) + "Mode for viewing Supercite reference headers. Commands are: \n\\{sc-electric-mode-map} `sc-electric-mode' is not intended to be run interactively, but rather accessed through Supercite's electric reference feature. See -`sc-insert-reference' for more details. Optional ARG is the initial +`sc-insert-reference' for more details. Optional STYLE is the initial header style to use, unless not supplied or invalid, in which case `sc-preferred-header-style' is used." (let ((info sc-mail-info)) (setq sc-eref-style - (or (sc-valid-index-p arg) + (or (sc-valid-index-p style) (sc-valid-index-p sc-preferred-header-style) 0)) |