]> git.eshelyaron.com Git - emacs.git/commitdiff
(rmail-cease-edit): Call kill-all-local-variables.
authorKarl Heuer <kwzh@gnu.org>
Wed, 8 Apr 1998 19:03:00 +0000 (19:03 +0000)
committerKarl Heuer <kwzh@gnu.org>
Wed, 8 Apr 1998 19:03:00 +0000 (19:03 +0000)
Call rmail-variables.
(rmail-edit-mode): Call text-mode.  Don't run text-mode-hook here.
(rmail-edit-map): Use set-keymap-parent.
(rmail-old-text): Add defvar.

lisp/mail/rmailedit.el

index 2f892981d19257b8b69f5030d83764177530dafc..b83411ce5ae03342b5a16cbacff74c7c04a30f8e 100644 (file)
 
 (require 'rmail)
 
+(defvar rmail-old-text)
+
 (defvar rmail-edit-map nil)
 (if rmail-edit-map
     nil
   ;; Make a keymap that inherits text-mode-map.
-  (setq rmail-edit-map (nconc (make-sparse-keymap) text-mode-map))
+  (setq rmail-edit-map (make-sparse-keymap))
+  (set-keymap-parent rmail-edit-map text-mode-map)
   (define-key rmail-edit-map "\C-c\C-c" 'rmail-cease-edit)
   (define-key rmail-edit-map "\C-c\C-]" 'rmail-abort-edit))
 
@@ -45,6 +48,7 @@ to return to regular RMAIL:
      you have made and returns to RMAIL
   *  rmail-cease-edit makes them permanent.
 \\{rmail-edit-map}"
+  (text-mode)
   (use-local-map rmail-edit-map)
   (setq major-mode 'rmail-edit-mode)
   (setq mode-name "RMAIL Edit")
@@ -55,7 +59,7 @@ to return to regular RMAIL:
       (save-excursion
        (set-buffer rmail-summary-buffer)
        (rmail-summary-disable)))
-  (run-hooks 'text-mode-hook 'rmail-edit-mode-hook))
+  (run-hooks 'rmail-edit-mode-hook))
 
 ;;;###autoload
 (defun rmail-edit-current-message ()
@@ -89,7 +93,9 @@ to return to regular RMAIL:
                (point)))
   (let ((old rmail-old-text))
     (force-mode-line-update)
+    (kill-all-local-variables)
     (rmail-mode-1)
+    (rmail-variables)
     (if (and (= (length old) (- (point-max) (point-min)))
             (string= old (buffer-substring (point-min) (point-max))))
        ()