]> code.delx.au - gnu-emacs/blobdiff - lisp/mh-e/mh-inc.el
** offby1@blarg.net, Nov 5: calendar gets wrong end for Daylight Savings Time
[gnu-emacs] / lisp / mh-e / mh-inc.el
index 51f84f7fb3896bf5b2e3df3d08e6f01642a543bb..e35dfc57834fc7380c77dd2d255576827c3ada4b 100644 (file)
@@ -1,6 +1,6 @@
 ;;; mh-inc.el --- MH-E "inc" and separate mail spool handling
-;;
-;; Copyright (C) 2003, 2004 Free Software Foundation, Inc.
+
+;; Copyright (C) 2003, 2004, 2006 Free Software Foundation, Inc.
 
 ;; Author: Peter S. Galbraith <psg@debian.org>
 ;; Maintainer: Bill Wohler <wohler@newt.com>
 
 ;;; Commentary:
 
-;;  Support for inc. In addition to reading from the system mailbox, inc can
-;;  also be used to incorporate mail from multiple spool files into separate
-;;  folders. See "C-h v mh-inc-spool-list".
+;; Support for inc. In addition to reading from the system mailbox,
+;; inc can also be used to incorporate mail from multiple spool files
+;; into separate folders. See "C-h v mh-inc-spool-list".
 
 ;;; Change Log:
 
 ;;; Code:
 
-(eval-when-compile (require 'mh-acros))
+(require 'mh-e)
 (mh-require-cl)
 
-(defvar mh-inc-spool-map (make-sparse-keymap)
-  "Keymap for MH-E's mh-inc-spool commands.")
-
 (defvar mh-inc-spool-map-help nil
-  "Help text to for `mh-inc-spool-map'.")
+  "Help text for `mh-inc-spool-map'.")
 
 (define-key mh-inc-spool-map "?"
   '(lambda ()
      (interactive)
      (if mh-inc-spool-map-help
-         (let ((mh-help-messages (list (list nil mh-inc-spool-map-help))))
-           (mh-help))
+         (mh-help mh-inc-spool-map-help)
        (mh-ephem-message
-        "There are no keys defined yet.  Customize `mh-inc-spool-list'"))))
+        "There are no keys defined yet; customize `mh-inc-spool-list'"))))
+
+;;;###mh-autoload
+(defun mh-inc-spool-make ()
+  "Make all commands and defines keys for contents of `mh-inc-spool-list'."
+  (setq mh-inc-spool-map-help nil)
+  (when mh-inc-spool-list
+    (loop for elem in mh-inc-spool-list
+          do (let ((spool (nth 0 elem))
+                   (folder (nth 1 elem))
+                   (key (nth 2 elem)))
+               (progn
+                 (mh-inc-spool-generator folder spool)
+                 (mh-inc-spool-def-key key folder))))))
+
+(defalias 'mh-inc-spool-make-no-autoload 'mh-inc-spool-make)
 
 (defun mh-inc-spool-generator (folder spool)
   "Create a command to inc into FOLDER from SPOOL file."
@@ -60,7 +71,7 @@
     (set spool1 spool)
     (setf (symbol-function (intern (concat "mh-inc-spool-" folder)))
           `(lambda ()
-             ,(format "Inc spool file %s into folder %s" spool folder)
+             ,(format "Inc spool file %s into folder %s." spool folder)
              (interactive)
              (mh-inc-folder ,spool1 (concat "+" ,folder1))))))
 
   (when (not (= 0 key))
     (define-key mh-inc-spool-map (format "%c" key)
        (intern (concat "mh-inc-spool-" folder)))
-    (setq mh-inc-spool-map-help (concat mh-inc-spool-map-help "["
-                                        (char-to-string key)
-                                        "] inc " folder " folder\n"))))
-
-;; Avoid compiler warning
-(defvar mh-inc-spool-list)
-
-(defun mh-inc-spool-make ()
-  "Make all commands and defines keys for contents of `mh-inc-spool-list'."
-  (when mh-inc-spool-list
-    (setq mh-inc-spool-map-help nil)
-    (loop for elem in mh-inc-spool-list
-          do (let ((spool (nth 0 elem))
-                   (folder (nth 1 elem))
-                   (key (nth 2 elem)))
-               (progn
-                 (mh-inc-spool-generator folder spool)
-                 (mh-inc-spool-def-key key folder))))))
-
-;;;###mh-autoload
-(defun mh-inc-spool-list-set (symbol value)
-  "Set-default SYMBOL to VALUE to update the `mh-inc-spool-list' variable.
-Also rebuilds the user commands.
-This is called after 'customize is used to alter `mh-inc-spool-list'."
-  (set-default symbol value)
-  (mh-inc-spool-make))
+    (add-to-list 'mh-inc-spool-map-help
+                 (concat "[" (char-to-string key) "] inc " folder " folder\n")
+                 t)))
 
 (provide 'mh-inc)