From: Richard M. Stallman Date: Sat, 23 Dec 1995 07:42:36 +0000 (+0000) Subject: (mail-setup): Put text property on mail-header-separator. X-Git-Tag: emacs-19.34~2036 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=6737ae742598060612b238140e9e6bd7c616154f;p=emacs.git (mail-setup): Put text property on mail-header-separator. (mail-header-separator): Set it up for use as a category property. (mail, mail-send): Turn on inhibit-read-only temporarily. --- diff --git a/lisp/mail/sendmail.el b/lisp/mail/sendmail.el index 809bbfb4b98..dc7b848ca73 100644 --- a/lisp/mail/sendmail.el +++ b/lisp/mail/sendmail.el @@ -65,6 +65,10 @@ match the variable `mail-header-separator'.") (defvar mail-header-separator "--text follows this line--" "\ *Line used to separate headers from text in messages being composed.") +;; Set up mail-header-separator for use as a category text property. +(put 'mail-header-separator 'rear-nonsticky '(category)) +(put 'mail-header-separator 'read-only t) + ;;;###autoload (defvar mail-archive-file-name nil "\ *Name of file to write all outgoing messages in, or nil for none. @@ -266,7 +270,11 @@ actually occur.") (insert "BCC: " (user-login-name) "\n")) (if mail-archive-file-name (insert "FCC: " mail-archive-file-name "\n")) - (insert mail-header-separator "\n") + (put-text-property (point) + (progn + (insert mail-header-separator "\n") + (1- (point))) + 'category 'mail-header-separator) ;; Insert the signature. But remember the beginning of the message. (if to (setq to (point))) (cond ((eq mail-signature t) @@ -438,7 +446,7 @@ the user from the mailer." (y-or-n-p "Send buffer contents as mail message? ") (or (buffer-modified-p) (y-or-n-p "Message already sent; resend? "))) - (progn + (let ((inhibit-read-only t)) (run-hooks 'mail-send-hook) (message "Sending...") (funcall send-mail-function) @@ -1008,9 +1016,10 @@ The seventh argument ACTIONS is a list of actions to take (and (not noerase) (or (not (buffer-modified-p)) (y-or-n-p "Unsent message being composed; erase it? ")) - (progn (erase-buffer) - (mail-setup to subject in-reply-to cc replybuffer actions) - (setq initialized t))) + (let ((inhibit-read-only t)) + (erase-buffer) + (mail-setup to subject in-reply-to cc replybuffer actions) + (setq initialized t))) (if (and buffer-auto-save-file-name (file-exists-p buffer-auto-save-file-name)) (message "Auto save file for draft message exists; consider M-x mail-recover"))