]> git.eshelyaron.com Git - emacs.git/commitdiff
(mh-send-sub): Check mh-etc is bound before using it.
authorStefan Monnier <monnier@iro.umontreal.ca>
Mon, 5 Jun 2000 07:15:58 +0000 (07:15 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Mon, 5 Jun 2000 07:15:58 +0000 (07:15 +0000)
(mh-letter-mode): Derive from text-mode.
This implicitly means that it now calls kill-all-local-variables.
Also remove the Emacs-18 compatibility code.

lisp/ChangeLog
lisp/mail/mh-comp.el

index 46e78137c206870b6a65693fff0088dd22c863fc..2d4fa55229b0163cb7c062f3b2e11733b29ea723 100644 (file)
@@ -1,5 +1,10 @@
 2000-06-05  Stefan Monnier  <monnier@cs.yale.edu>
 
+       * mail/mh-comp.el (mh-send-sub): Check mh-etc is bound before using it.
+       (mh-letter-mode): Derive from text-mode.
+       This implicitly means that it now calls kill-all-local-variables.
+       Also remove the Emacs-18 compatibility code.
+
        * emacs-lisp/autoload.el (make-autoload): Simplify docstring.
        Make use of symbol-property doc-string-elt.
        Use memq rather than a sequence of eq.
index 0a0841b2e6c0be82203d72af974965711074520d..5b8828201f23a9bb2017b7a137d1091338a991f8 100644 (file)
@@ -26,7 +26,7 @@
 
 ;;; Change Log:
 
-;; $Id: mh-comp.el,v 1.16 1999/11/10 10:46:01 gerd Exp $
+;; $Id: mh-comp.el,v 1.17 2000/04/27 18:56:42 gerd Exp $
 
 ;;; Code:
 
@@ -517,7 +517,9 @@ See also documentation for `\\[mh-send]' function."
                      components)
                     ((file-exists-p
                       (setq components
-                            (expand-file-name mh-comp-formfile mh-etc)))
+                            (expand-file-name mh-comp-formfile
+                                              ;; What is this mh-etc ??  -sm
+                                              (and (boundp 'mh-etc) mh-etc))))
                      components)
                     (t
                      (error (format "Can't find components file \"%s\""
@@ -691,7 +693,7 @@ See also documentation for `\\[mh-send]' function."
 (put 'mh-letter-mode 'mode-class 'special)
 
 ;;;###autoload
-(defun mh-letter-mode ()
+(define-derived-mode mh-letter-mode text-mode "MH-Letter"
   "Mode for composing letters in mh-e.\\<mh-letter-mode-map>
 When you have finished composing, type \\[mh-send-letter] to send the message
 using the MH mail handling system.
@@ -720,8 +722,6 @@ Variables controlling this mode (defaults in parentheses):
     File to be inserted into message by \\[mh-insert-signature].
 
 This command runs the normal hooks `text-mode-hook' and `mh-letter-mode-hook'."
-
-  (interactive)
   (or mh-user-path (mh-find-path))
   (make-local-variable 'paragraph-start)
   (setq paragraph-start (concat "^[ \t]*[-_][-_][-_]+$\\|" paragraph-start))
@@ -736,19 +736,10 @@ This command runs the normal hooks `text-mode-hook' and `mh-letter-mode-hook'."
   (make-local-variable 'mh-sent-from-msg)
   (make-local-variable 'mail-header-separator)
   (setq mail-header-separator "--------") ;for Hyperbole
-  (use-local-map mh-letter-mode-map)
-  (setq major-mode 'mh-letter-mode)
-  (mh-set-mode-name "MH-Letter")
-  (set-syntax-table mh-letter-mode-syntax-table)
-  (run-hooks 'text-mode-hook)
   ;; if text-mode-hook turned on auto-fill, tune it for messages
-  (cond ((and (boundp 'auto-fill-hook) auto-fill-hook) ;emacs 18
-        (make-local-variable 'auto-fill-hook)
-        (setq auto-fill-hook 'mh-auto-fill-for-letter)))
-  (cond ((and (boundp 'auto-fill-function) auto-fill-function) ;emacs 19
-        (make-local-variable 'auto-fill-function)
-        (setq auto-fill-function 'mh-auto-fill-for-letter)))
-  (run-hooks 'mh-letter-mode-hook))
+  (when auto-fill-function
+    (make-local-variable 'auto-fill-function)
+    (setq auto-fill-function 'mh-auto-fill-for-letter)))
 
 
 (defun mh-auto-fill-for-letter ()