]> git.eshelyaron.com Git - emacs.git/commitdiff
Remove more MH-E compat code
authorStefan Kangas <stefan@marxist.se>
Tue, 12 Oct 2021 12:04:21 +0000 (14:04 +0200)
committerStefan Kangas <stefan@marxist.se>
Tue, 12 Oct 2021 12:22:11 +0000 (14:22 +0200)
* lisp/mh-e/mh-e.el (mh-strip-package-version, defgroup-mh)
(defcustom-mh, defface-mh): Make Emacs 21 compat aliases obsolete.
Update callers.

* lisp/mh-e/mh-e.el:
(mh-exchange-point-and-mark-preserving-active-mark)
* lisp/mh-e/mh-folder.el (desktop-buffer-mode-handlers):
* lisp/mh-e/mh-mime.el (mh-mm-inline-media-tests)
(mh-have-file-command, mh-mime-security-button-map):
* lisp/mh-e/mh-show.el (mh-summary-height):
* lisp/mh-e/mh-speed.el (mh-process-kill-without-query):
* lisp/mh-e/mh-xface.el (mh-uncompface-executable)
(mh-face-to-png, mh-uncompface, mh-picon-file-contents): Remove
XEmacs and Emacs 21 and older compat code.

lisp/mh-e/mh-acros.el
lisp/mh-e/mh-e.el
lisp/mh-e/mh-folder.el
lisp/mh-e/mh-letter.el
lisp/mh-e/mh-mime.el
lisp/mh-e/mh-seq.el
lisp/mh-e/mh-show.el
lisp/mh-e/mh-speed.el
lisp/mh-e/mh-xface.el

index 575b233e1be374c3f1357b9a2dba5ffbbe358841..0669f5bb22ce8d0556c52d87df78a2cfa31fbadd 100644 (file)
@@ -110,11 +110,11 @@ XEmacs and versions of GNU Emacs before 21.1 require
 (defmacro mh-mark-active-p (check-transient-mark-mode-flag)
   "If CHECK-TRANSIENT-MARK-MODE-FLAG is non-nil then check if
 variable `transient-mark-mode' is active."
+  (declare (obsolete nil "29.1"))
   (cond ((not check-transient-mark-mode-flag)
-         '(and (boundp 'mark-active) mark-active))
+         'mark-active)
         (t
-         '(and (boundp 'transient-mark-mode) transient-mark-mode
-               (boundp 'mark-active) mark-active))))
+         '(and transient-mark-mode mark-active))))
 
 ;;;###mh-autoload
 (defmacro with-mh-folder-updating (save-modification-flag &rest body)
index b02b8e0154f18d438bbd23bcd70b893c1aff76b7..f47b6f46cf9fcee5c26864a1e8e11332eff17cc5 100644 (file)
 (require 'mh-buffers)
 (require 'mh-compat)
 
-(font-lock-add-keywords
- 'emacs-lisp-mode
- (eval-when-compile
-   `((,(concat "(\\("
-               ;; Function declarations (use font-lock-function-name-face).
-               "\\(def\\(un\\|macro\\)-mh\\)\\|"
-               ;; Variable declarations (use font-lock-variable-name-face).
-               "\\(def\\(custom\\|face\\)-mh\\)\\|"
-               ;; Group declarations (use font-lock-type-face).
-               "\\(defgroup-mh\\)"
-               "\\)\\>"
-               ;; Any whitespace and defined object.
-               "[ \t'(]*"
-               "\\(setf[ \t]+\\sw+)\\|\\sw+\\)?")
-      (1 font-lock-keyword-face)
-      (7 (cond ((match-beginning 2) font-lock-function-name-face)
-               ((match-beginning 4) font-lock-variable-name-face)
-               (t font-lock-type-face))
-         nil t)))))
-
 \f
 
 ;;; Global Variables
@@ -621,14 +601,13 @@ Output is expected to be shown to user, not parsed by MH-E."
 This command works even when the mark is not active, and
 preserves whether the mark is active or not."
   (interactive nil)
-  (let ((is-active (and (boundp 'mark-active) mark-active)))
+  (let ((is-active mark-active))
     (let ((omark (mark t)))
       (if (null omark)
           (error "No mark set in this buffer"))
       (set-mark (point))
       (goto-char omark)
-      (if (boundp 'mark-active)
-          (setq mark-active is-active))
+      (setq mark-active is-active)
       nil)))
 
 (defun mh-exec-lib-cmd-output (command &rest args)
@@ -659,50 +638,36 @@ Set mark after inserted text."
 ;; Temporary function and data structure used customization.
 ;; These will be unbound after the options are defined.
 (defmacro mh-strip-package-version (args)
-  "Strip :package-version keyword and its value from ARGS.
-In Emacs versions that support the :package-version keyword,
-ARGS is returned unchanged."
-  `(if (boundp 'customize-package-emacs-version-alist)
-       ,args
-     (let (seen)
-       (cl-loop for keyword in ,args
-                if (cond ((eq keyword ':package-version) (setq seen t) nil)
-                         (seen (setq seen nil) nil)
-                         (t t))
-                collect keyword))))
+  "ARGS is returned unchanged."
+  (declare (obsolete identity "29.1"))
+  args)
 
 (defmacro defgroup-mh (symbol members doc &rest args)
   "Declare SYMBOL as a customization group containing MEMBERS.
 See documentation for `defgroup' for a description of the arguments
-SYMBOL, MEMBERS, DOC and ARGS.
-This macro is used by Emacs versions that lack the :package-version
-keyword, introduced in Emacs 22."
-  (declare (doc-string 3) (indent defun))
-  `(defgroup ,symbol ,members ,doc ,@(mh-strip-package-version args)))
+SYMBOL, MEMBERS, DOC and ARGS."
+  (declare (obsolete defgroup "29.1") (doc-string 3) (indent defun))
+  `(defgroup ,symbol ,members ,doc ,args))
 
 (defmacro defcustom-mh (symbol value doc &rest args)
   "Declare SYMBOL as a customizable variable that defaults to VALUE.
 See documentation for `defcustom' for a description of the arguments
-SYMBOL, VALUE, DOC and ARGS.
-This macro is used by Emacs versions that lack the :package-version
-keyword, introduced in Emacs 22."
-  (declare (doc-string 3) (indent defun))
-  `(defcustom ,symbol ,value ,doc ,@(mh-strip-package-version args)))
+SYMBOL, VALUE, DOC and ARGS."
+  (declare (obsolete defcustom "29.1") (doc-string 3) (indent defun))
+  `(defcustom ,symbol ,value ,doc ,args))
 
 (defmacro defface-mh (face spec doc &rest args)
   "Declare FACE as a customizable face that defaults to SPEC.
 See documentation for `defface' for a description of the arguments
-FACE, SPEC, DOC and ARGS.
-This macro is used by Emacs versions that lack the :package-version
-keyword, introduced in Emacs 22."
-  (declare (doc-string 3) (indent defun))
-  `(defface ,face ,spec ,doc ,@(mh-strip-package-version args)))
+FACE, SPEC, DOC and ARGS."
+  (declare (obsolete defface "29.1") (doc-string 3) (indent defun))
+  `(defface ,face ,spec ,doc ,args))
 
 \f
 
 ;;; Variant Support
 
-(defcustom-mh mh-path nil
+(defcustom mh-path nil
   "Additional list of directories to search for MH.
 See `mh-variant'."
   :group 'mh-e
@@ -937,7 +902,7 @@ finally GNU mailutils MH."
                (mapconcat (lambda (x) (format "%s" (car x)))
                           (mh-variants) " or "))))))
 
-(defcustom-mh mh-variant 'autodetect
+(defcustom mh-variant 'autodetect
   "Specifies the variant used by MH-E.
 
 The default setting of this option is \"Auto-detect\" which means
@@ -1013,19 +978,18 @@ windows in the frame are removed."
   (when delete-other-windows-flag
     (delete-other-windows)))
 
-(if (boundp 'customize-package-emacs-version-alist)
-    (add-to-list 'customize-package-emacs-version-alist
-                 '(MH-E ("6.0" . "22.1") ("6.1" . "22.1") ("7.0" . "22.1")
-                        ("7.1" . "22.1") ("7.2" . "22.1") ("7.3" . "22.1")
-                        ("7.4" . "22.1") ("8.0" . "22.1") ("8.1" . "23.1")
-                        ("8.2" . "23.1") ("8.3" . "24.1") ("8.4" . "24.4")
-                        ("8.5" . "24.4") ("8.6" . "24.4"))))
+(add-to-list 'customize-package-emacs-version-alist
+             '(MH-E ("6.0" . "22.1") ("6.1" . "22.1") ("7.0" . "22.1")
+                    ("7.1" . "22.1") ("7.2" . "22.1") ("7.3" . "22.1")
+                    ("7.4" . "22.1") ("8.0" . "22.1") ("8.1" . "23.1")
+                    ("8.2" . "23.1") ("8.3" . "24.1") ("8.4" . "24.4")
+                    ("8.5" . "24.4") ("8.6" . "24.4")))
 
 \f
 
 ;;; MH-E Customization Groups
 
-(defgroup-mh mh-e nil
+(defgroup mh-e nil
   "Emacs interface to the MH mail system.
 MH is the Rand Mail Handler. Other implementations include nmh
 and GNU mailutils."
@@ -1033,126 +997,126 @@ and GNU mailutils."
   :group 'mail
   :package-version '(MH-E . "8.0"))
 
-(defgroup-mh mh-alias nil
+(defgroup mh-alias nil
   "Aliases."
   :link '(custom-manual "(mh-e)Aliases")
   :prefix "mh-alias-"
   :group 'mh-e
   :package-version '(MH-E . "7.1"))
 
-(defgroup-mh mh-folder nil
+(defgroup mh-folder nil
   "Organizing your mail with folders."
   :prefix "mh-"
   :link '(custom-manual "(mh-e)Folders")
   :group 'mh-e
   :package-version '(MH-E . "7.1"))
 
-(defgroup-mh mh-folder-selection nil
+(defgroup mh-folder-selection nil
   "Folder selection."
   :prefix "mh-"
   :link '(custom-manual "(mh-e)Folder Selection")
   :group 'mh-e
   :package-version '(MH-E . "8.0"))
 
-(defgroup-mh mh-identity nil
+(defgroup mh-identity nil
   "Identities."
   :link '(custom-manual "(mh-e)Identities")
   :prefix "mh-identity-"
   :group 'mh-e
   :package-version '(MH-E . "7.1"))
 
-(defgroup-mh mh-inc nil
+(defgroup mh-inc nil
   "Incorporating your mail."
   :prefix "mh-inc-"
   :link '(custom-manual "(mh-e)Incorporating Mail")
   :group 'mh-e
   :package-version '(MH-E . "8.0"))
 
-(defgroup-mh mh-junk nil
+(defgroup mh-junk nil
   "Dealing with junk mail."
   :link '(custom-manual "(mh-e)Junk")
   :prefix "mh-junk-"
   :group 'mh-e
   :package-version '(MH-E . "7.3"))
 
-(defgroup-mh mh-letter nil
+(defgroup mh-letter nil
   "Editing a draft."
   :prefix "mh-"
   :link '(custom-manual "(mh-e)Editing Drafts")
   :group 'mh-e
   :package-version '(MH-E . "7.1"))
 
-(defgroup-mh mh-ranges nil
+(defgroup mh-ranges nil
   "Ranges."
   :prefix "mh-"
   :link '(custom-manual "(mh-e)Ranges")
   :group 'mh-e
   :package-version '(MH-E . "8.0"))
 
-(defgroup-mh mh-scan-line-formats nil
+(defgroup mh-scan-line-formats nil
   "Scan line formats."
   :link '(custom-manual "(mh-e)Scan Line Formats")
   :prefix "mh-"
   :group 'mh-e
   :package-version '(MH-E . "8.0"))
 
-(defgroup-mh mh-search nil
+(defgroup mh-search nil
   "Searching."
   :link '(custom-manual "(mh-e)Searching")
   :prefix "mh-search-"
   :group 'mh-e
   :package-version '(MH-E . "8.0"))
 
-(defgroup-mh mh-sending-mail nil
+(defgroup mh-sending-mail nil
   "Sending mail."
   :prefix "mh-"
   :link '(custom-manual "(mh-e)Sending Mail")
   :group 'mh-e
   :package-version '(MH-E . "8.0"))
 
-(defgroup-mh mh-sequences nil
+(defgroup mh-sequences nil
   "Sequences."
   :prefix "mh-"
   :link '(custom-manual "(mh-e)Sequences")
   :group 'mh-e
   :package-version '(MH-E . "8.0"))
 
-(defgroup-mh mh-show nil
+(defgroup mh-show nil
   "Reading your mail."
   :prefix "mh-"
   :link '(custom-manual "(mh-e)Reading Mail")
   :group 'mh-e
   :package-version '(MH-E . "7.1"))
 
-(defgroup-mh mh-speedbar nil
+(defgroup mh-speedbar nil
   "The speedbar."
   :prefix "mh-speed-"
   :link '(custom-manual "(mh-e)Speedbar")
   :group 'mh-e
   :package-version '(MH-E . "8.0"))
 
-(defgroup-mh mh-thread nil
+(defgroup mh-thread nil
   "Threading."
   :prefix "mh-thread-"
   :link '(custom-manual "(mh-e)Threading")
   :group 'mh-e
   :package-version '(MH-E . "8.0"))
 
-(defgroup-mh mh-tool-bar nil
+(defgroup mh-tool-bar nil
   "The tool bar"
   :link '(custom-manual "(mh-e)Tool Bar")
   :prefix "mh-"
   :group 'mh-e
   :package-version '(MH-E . "8.0"))
 
-(defgroup-mh mh-hooks nil
+(defgroup mh-hooks nil
   "MH-E hooks."
   :link '(custom-manual "(mh-e)Top")
   :prefix "mh-"
   :group 'mh-e
   :package-version '(MH-E . "7.1"))
 
-(defgroup-mh mh-faces nil
+(defgroup mh-faces nil
   "Faces used in MH-E."
   :link '(custom-manual "(mh-e)Top")
   :prefix "mh-"
@@ -1168,7 +1132,7 @@ and GNU mailutils."
 
 ;;; Aliases (:group 'mh-alias)
 
-(defcustom-mh mh-alias-completion-ignore-case-flag t
+(defcustom mh-alias-completion-ignore-case-flag t
   "Non-nil means don't consider case significant in MH alias completion.
 
 As MH ignores case in the aliases, so too does MH-E. However, you
@@ -1179,7 +1143,7 @@ lowercase for mailing lists and uppercase for people."
   :group 'mh-alias
   :package-version '(MH-E . "7.1"))
 
-(defcustom-mh mh-alias-expand-aliases-flag nil
+(defcustom mh-alias-expand-aliases-flag nil
   "Non-nil means to expand aliases entered in the minibuffer.
 
 In other words, aliases entered in the minibuffer will be
@@ -1189,7 +1153,7 @@ this expansion is not performed."
   :group 'mh-alias
   :package-version '(MH-E . "7.1"))
 
-(defcustom-mh mh-alias-flash-on-comma t
+(defcustom mh-alias-flash-on-comma t
   "Specify whether to flash address or warn on translation.
 
 This option controls the behavior when a [comma] is pressed while
@@ -1202,7 +1166,7 @@ does not display a warning if the alias is not found."
   :group 'mh-alias
   :package-version '(MH-E . "7.1"))
 
-(defcustom-mh mh-alias-insert-file nil
+(defcustom mh-alias-insert-file nil
   "Filename used to store a new MH-E alias.
 
 The default setting of this option is \"Use Aliasfile Profile
@@ -1216,7 +1180,7 @@ name, MH-E will prompt for one of them when MH-E adds an alias."
   :group 'mh-alias
   :package-version '(MH-E . "7.1"))
 
-(defcustom-mh mh-alias-insertion-location 'sorted
+(defcustom mh-alias-insertion-location 'sorted
   "Specifies where new aliases are entered in alias files.
 
 This option is set to \"Alphabetical\" by default. If you organize
@@ -1228,7 +1192,7 @@ or \"Bottom\" of your alias file might be more appropriate."
   :group 'mh-alias
   :package-version '(MH-E . "7.1"))
 
-(defcustom-mh mh-alias-local-users t
+(defcustom mh-alias-local-users t
   "Non-nil means local users are added to alias completion.
 
 Aliases are created from \"/etc/passwd\" entries with a user ID
@@ -1249,7 +1213,7 @@ NIS password file."
   :group 'mh-alias
   :package-version '(MH-E . "7.1"))
 
-(defcustom-mh mh-alias-local-users-prefix "local."
+(defcustom mh-alias-local-users-prefix "local."
   "String prefixed to the real names of users from the password file.
 This option can also be set to \"Use Login\".
 
@@ -1271,7 +1235,7 @@ turned off."
   :group 'mh-alias
   :package-version '(MH-E . "7.4"))
 
-(defcustom-mh mh-alias-passwd-gecos-comma-separator-flag t
+(defcustom mh-alias-passwd-gecos-comma-separator-flag t
   "Non-nil means the gecos field in the password file uses a comma separator.
 
 In the example in `mh-alias-local-users-prefix', commas are used
@@ -1285,7 +1249,7 @@ whose contents may contain commas, you can turn this option off."
 
 ;;; Organizing Your Mail with Folders (:group 'mh-folder)
 
-(defcustom-mh mh-new-messages-folders t
+(defcustom mh-new-messages-folders t
   "Folders searched for the \"unseen\" sequence.
 
 Set this option to \"Inbox\" to search the \"+inbox\" folder or
@@ -1300,7 +1264,7 @@ See also `mh-recursive-folders-flag'."
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-ticked-messages-folders t
+(defcustom mh-ticked-messages-folders t
   "Folders searched for `mh-tick-seq'.
 
 Set this option to \"Inbox\" to search the \"+inbox\" folder or
@@ -1315,7 +1279,7 @@ See also `mh-recursive-folders-flag'."
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-large-folder 200
+(defcustom mh-large-folder 200
   "The number of messages that indicates a large folder.
 
 If a folder is deemed to be large, that is the number of messages
@@ -1327,7 +1291,7 @@ folders are treated as if they are small."
   :group 'mh-folder
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-recenter-summary-flag nil
+(defcustom mh-recenter-summary-flag nil
   "Non-nil means to recenter the summary window.
 
 If this option is turned on, recenter the summary window when the
@@ -1336,13 +1300,13 @@ show window is toggled off."
   :group 'mh-folder
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-recursive-folders-flag nil
+(defcustom mh-recursive-folders-flag nil
   "Non-nil means that commands which operate on folders do so recursively."
   :type 'boolean
   :group 'mh-folder
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-sortm-args nil
+(defcustom mh-sortm-args nil
   "Additional arguments for \"sortm\"\\<mh-folder-mode-map>.
 
 This option is consulted when a prefix argument is used with
@@ -1356,7 +1320,7 @@ an alternate view. For example, (\"-nolimit\" \"-textfield\"
 
 ;;; Folder Selection (:group 'mh-folder-selection)
 
-(defcustom-mh mh-default-folder-for-message-function nil
+(defcustom mh-default-folder-for-message-function nil
   "Function to select a default folder for refiling or \"Fcc:\".
 
 When this function is called, the current buffer contains the message
@@ -1368,7 +1332,7 @@ the default, or an empty string to suppress the default entirely."
   :group 'mh-folder-selection
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-default-folder-list nil
+(defcustom mh-default-folder-list nil
   "List of addresses and folders.
 
 The folder name associated with the first address found in this
@@ -1386,7 +1350,7 @@ for more information."
   :group 'mh-folder-selection
   :package-version '(MH-E . "7.2"))
 
-(defcustom-mh mh-default-folder-must-exist-flag t
+(defcustom mh-default-folder-must-exist-flag t
   "Non-nil means guessed folder name must exist to be used.
 
 If the derived folder does not exist, and this option is on, then
@@ -1400,7 +1364,7 @@ for more information."
   :group 'mh-folder-selection
   :package-version '(MH-E . "7.2"))
 
-(defcustom-mh mh-default-folder-prefix ""
+(defcustom mh-default-folder-prefix ""
   "Prefix used for folder names generated from aliases.
 The prefix is used to prevent clutter in your mail directory.
 
@@ -1419,7 +1383,7 @@ for more information."
 Real definition will take effect when mh-identity is loaded."
       nil)))
 
-(defcustom-mh mh-identity-list nil
+(defcustom mh-identity-list nil
   "List of identities.
 
 To customize this option, click on the \"INS\" button and enter a label
@@ -1488,7 +1452,7 @@ fashion."
   :group 'mh-identity
   :package-version '(MH-E . "7.1"))
 
-(defcustom-mh mh-auto-fields-list nil
+(defcustom mh-auto-fields-list nil
   "List of recipients for which header lines are automatically inserted.
 
 This option can be used to set the identity depending on the
@@ -1549,14 +1513,14 @@ as the result is undefined."
   :group 'mh-identity
   :package-version '(MH-E . "7.3"))
 
-(defcustom-mh mh-auto-fields-prompt-flag t
+(defcustom mh-auto-fields-prompt-flag t
   "Non-nil means to prompt before sending if fields inserted.
 See `mh-auto-fields-list'."
   :type 'boolean
   :group 'mh-identity
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-identity-default nil
+(defcustom mh-identity-default nil
   "Default identity to use when `mh-letter-mode' is called.
 See `mh-identity-list'."
   :type (append
@@ -1567,7 +1531,7 @@ See `mh-identity-list'."
   :group 'mh-identity
   :package-version '(MH-E . "7.1"))
 
-(defcustom-mh mh-identity-handlers
+(defcustom mh-identity-handlers
   '(("From" . mh-identity-handler-top)
     (":default" . mh-identity-handler-bottom)
     (":attribution-verb" . mh-identity-handler-attribution-verb)
@@ -1603,7 +1567,7 @@ containing the VALUE for the field is given."
 
 ;;; Incorporating Your Mail (:group 'mh-inc)
 
-(defcustom-mh mh-inc-prog "inc"
+(defcustom mh-inc-prog "inc"
   "Program to incorporate new mail into a folder.
 
 This program generates a one-line summary for each of the new
@@ -1622,7 +1586,7 @@ several scan line format variables appropriately."
 Real definition will take effect when mh-inc is loaded."
       nil)))
 
-(defcustom-mh mh-inc-spool-list nil
+(defcustom mh-inc-spool-list nil
   "Alternate spool files.
 
 You can use the `mh-inc-spool-list' variable to direct MH-E to
@@ -1692,7 +1656,7 @@ The function is always called with SYMBOL bound to
                      until (executable-find (symbol-name (car element)))
                      finally return (car element)))))
 
-(defcustom-mh mh-junk-background nil
+(defcustom mh-junk-background nil
   "If on, spam programs are run in background.
 
 By default, the programs are run in the foreground, but this can
@@ -1710,14 +1674,14 @@ may be useful for debugging."
   :group 'mh-junk
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-junk-disposition nil
+(defcustom mh-junk-disposition nil
   "Disposition of junk mail."
   :type '(choice (const :tag "Delete Spam" nil)
                  (string :tag "Spam Folder"))
   :group 'mh-junk
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-junk-program nil
+(defcustom mh-junk-program nil
   "Spam program that MH-E should use.
 
 The default setting of this option is \"Auto-detect\" which means
@@ -1735,7 +1699,7 @@ bogofilter, then you can set this option to \"Bogofilter\"."
 
 ;;; Editing a Draft (:group 'mh-letter)
 
-(defcustom-mh mh-compose-insertion (if (locate-library "mml") 'mml 'mh)
+(defcustom mh-compose-insertion (if (locate-library "mml") 'mml 'mh)
   "Type of tags used when composing MIME messages.
 
 In addition to MH-style directives, MH-E also supports MML (MIME
@@ -1749,7 +1713,7 @@ MH-style directives are preferred."
   :group 'mh-letter
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-compose-skipped-header-fields
+(defcustom mh-compose-skipped-header-fields
   '("From" "Organization" "References" "In-Reply-To"
     "X-Face" "Face" "X-Image-URL" "X-Mailer")
   "List of header fields to skip over when navigating in draft."
@@ -1757,13 +1721,13 @@ MH-style directives are preferred."
   :group 'mh-letter
   :package-version '(MH-E . "7.4"))
 
-(defcustom-mh mh-compose-space-does-completion-flag nil
+(defcustom mh-compose-space-does-completion-flag nil
   "Non-nil means \\<mh-letter-mode-map>\\[mh-letter-complete-or-space] does completion in message header."
   :type 'boolean
   :group 'mh-letter
   :package-version '(MH-E . "7.4"))
 
-(defcustom-mh mh-delete-yanked-msg-window-flag nil
+(defcustom mh-delete-yanked-msg-window-flag nil
   "Non-nil means delete any window displaying the message.
 
 This deletes the window containing the original message after
@@ -1773,7 +1737,7 @@ more room on your screen for your reply."
   :group 'mh-letter
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-extract-from-attribution-verb "wrote:"
+(defcustom mh-extract-from-attribution-verb "wrote:"
   "Verb to use for attribution when a message is yanked by \\<mh-letter-mode-map>\\[mh-yank-cur-msg].
 
 The attribution consists of the sender's name and email address
@@ -1787,7 +1751,7 @@ followed by the content of this option. This option can be set to
   :group 'mh-letter
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-ins-buf-prefix "> "
+(defcustom mh-ins-buf-prefix "> "
   "String to put before each line of a yanked or inserted message.
 
 The prefix \"> \" is the default setting of this option. I
@@ -1803,7 +1767,7 @@ flavors of `mh-yank-behavior' or you have added a
   :group 'mh-letter
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-letter-complete-function 'ispell-complete-word
+(defcustom mh-letter-complete-function 'ispell-complete-word
   "Function to call when completing outside of address or folder fields.
 
 In the body of the message,
@@ -1813,7 +1777,7 @@ which is set to \"ispell-complete-word\" by default."
   :group 'mh-letter
   :package-version '(MH-E . "7.1"))
 
-(defcustom-mh mh-letter-fill-column 72
+(defcustom mh-letter-fill-column 72
   "Fill column to use in MH Letter mode.
 
 By default, this option is 72 to allow others to quote your
@@ -1822,7 +1786,7 @@ message without line wrapping."
   :group 'mh-letter
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-mml-method-default (if mh-pgp-support-flag "pgpmime" "none")
+(defcustom mh-mml-method-default (if mh-pgp-support-flag "pgpmime" "none")
   "Default method to use in security tags.
 
 This option is used to select between a variety of mail security
@@ -1845,7 +1809,7 @@ you write!"
   :group 'mh-letter
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-signature-file-name "~/.signature"
+(defcustom mh-signature-file-name "~/.signature"
   "Source of user's signature.
 
 By default, the text of your signature is taken from the file
@@ -1868,7 +1832,7 @@ The signature is inserted into your message with the command
   :group 'mh-letter
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-signature-separator-flag t
+(defcustom mh-signature-separator-flag t
   "Non-nil means a signature separator should be inserted.
 
 It is not recommended that you change this option since various
@@ -1879,7 +1843,7 @@ replying or yanking a letter into a draft."
   :group 'mh-letter
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-x-face-file "~/.face"
+(defcustom mh-x-face-file "~/.face"
   "File containing face header field to insert in outgoing mail.
 
 If the file starts with either of the strings \"X-Face:\", \"Face:\"
@@ -1908,7 +1872,7 @@ this option doesn't exist."
   :group 'mh-letter
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-yank-behavior 'attribution
+(defcustom mh-yank-behavior 'attribution
   "Controls which part of a message is yanked by \\<mh-letter-mode-map>\\[mh-yank-cur-msg].
 
 To include the entire message, including the entire header, use
@@ -1955,7 +1919,7 @@ inserted."
 
 ;;; Ranges (:group 'mh-ranges)
 
-(defcustom-mh mh-interpret-number-as-range-flag t
+(defcustom mh-interpret-number-as-range-flag t
   "Non-nil means interpret a number as a range.
 
 Since one of the most frequent ranges used is \"last:N\", MH-E
@@ -1975,7 +1939,7 @@ message 200, then use the range \"200:200\"."
 Real definition, below, uses variables that aren't defined yet."
       (set-default symbol value))))
 
-(defcustom-mh mh-adaptive-cmd-note-flag t
+(defcustom mh-adaptive-cmd-note-flag t
   "Non-nil means that the message number width is determined dynamically.
 
 If you've created your own format to handle long message numbers,
@@ -2004,7 +1968,7 @@ set SYMBOL to VALUE."
              "unless you use \"Use MH-E scan Format\"")
     (set-default symbol value)))
 
-(defcustom-mh mh-scan-format-file t
+(defcustom mh-scan-format-file t
   "Specifies the format file to pass to the scan program.
 
 The default setting for this option is \"Use MH-E scan Format\". This
@@ -2043,7 +2007,7 @@ Otherwise, set SYMBOL to VALUE."
              "is set to \"Use MH-E scan Format\"")
     (set-default symbol value)))
 
-(defcustom-mh mh-scan-prog "scan"
+(defcustom mh-scan-prog "scan"
   "Program used to scan messages.
 
 The name of the program that generates a listing of one line per
@@ -2058,7 +2022,7 @@ directory. You may link another program to `scan' (see
 
 ;;; Searching (:group 'mh-search)
 
-(defcustom-mh mh-search-program nil
+(defcustom mh-search-program nil
   "Search program that MH-E shall use.
 
 The default setting of this option is \"Auto-detect\" which means
@@ -2081,7 +2045,7 @@ MH-E can be found in the documentation of `mh-search'."
 
 ;;; Sending Mail (:group 'mh-sending-mail)
 
-(defcustom-mh mh-compose-forward-as-mime-flag t
+(defcustom mh-compose-forward-as-mime-flag t
   "Non-nil means that messages are forwarded as attachments.
 
 By default, this option is on which means that the forwarded
@@ -2097,7 +2061,7 @@ regardless of the settings of this option."
   :group 'mh-sending-mail
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-compose-letter-function nil
+(defcustom mh-compose-letter-function nil
   "Invoked when starting a new draft.
 
 However, it is the last function called before you edit your
@@ -2109,13 +2073,13 @@ fields."
   :group 'mh-sending-mail
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-compose-prompt-flag nil
+(defcustom mh-compose-prompt-flag nil
   "Non-nil means prompt for header fields when composing a new draft."
   :type 'boolean
   :group 'mh-sending-mail
   :package-version '(MH-E . "7.4"))
 
-(defcustom-mh mh-forward-subject-format "%s: %s"
+(defcustom mh-forward-subject-format "%s: %s"
   "Format string for forwarded message subject.
 
 This option is a string which includes two escapes (\"%s\"). The
@@ -2125,7 +2089,7 @@ and the second one is replaced with the original \"Subject:\"."
   :group 'mh-sending-mail
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-insert-x-mailer-flag t
+(defcustom mh-insert-x-mailer-flag t
   "Non-nil means append an \"X-Mailer:\" header field to the header.
 
 This header field includes the version of MH-E and Emacs that you
@@ -2135,7 +2099,7 @@ can turn this option off."
   :group 'mh-sending-mail
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-redist-full-contents-flag nil
+(defcustom mh-redist-full-contents-flag nil
   "Non-nil means the \"dist\" command needs entire letter for redistribution.
 
 This option must be turned on if \"dist\" requires the whole
@@ -2147,7 +2111,7 @@ has been redistributed before, turn off this option."
   :group 'mh-sending-mail
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-reply-default-reply-to nil
+(defcustom mh-reply-default-reply-to nil
   "Sets the person or persons to whom a reply will be sent.
 
 This option is set to \"Prompt\" by default so that you are
@@ -2163,7 +2127,7 @@ this option to \"cc\". Other choices include \"from\", \"to\", or
   :group 'mh-sending-mail
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-reply-show-message-flag t
+(defcustom mh-reply-show-message-flag t
   "Non-nil means the MH-Show buffer is displayed when replying.
 
 If you include the message automatically, you can hide the
@@ -2180,7 +2144,7 @@ See also `mh-reply'."
 ;; the docstring: "Additional sequences that should not to be preserved can be
 ;; specified by setting `mh-unpropagated-sequences' appropriately." XXX
 
-(defcustom-mh mh-refile-preserves-sequences-flag t
+(defcustom mh-refile-preserves-sequences-flag t
   "Non-nil means that sequences are preserved when messages are refiled.
 
 If a message is in any sequence (except \"Previous-Sequence:\"
@@ -2191,7 +2155,7 @@ desired, then turn off this option."
   :group 'mh-sequences
   :package-version '(MH-E . "7.4"))
 
-(defcustom-mh mh-tick-seq 'tick
+(defcustom mh-tick-seq 'tick
   "The name of the MH sequence for ticked messages.
 
 You can customize this option if you already use the \"tick\"
@@ -2203,7 +2167,7 @@ there isn't much advantage to that."
   :group 'mh-sequences
   :package-version '(MH-E . "7.3"))
 
-(defcustom-mh mh-update-sequences-after-mh-show-flag t
+(defcustom mh-update-sequences-after-mh-show-flag t
   "Non-nil means flush MH sequences to disk after message is shown\\<mh-folder-mode-map>.
 
 Three sequences are maintained internally by MH-E and pushed out
@@ -2218,7 +2182,7 @@ commands."
   :group 'mh-sequences
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-allowlist-preserves-sequences-flag t
+(defcustom mh-allowlist-preserves-sequences-flag t
   "Non-nil means that sequences are preserved when messages are allowlisted.
 
 If a message is in any sequence (except \"Previous-Sequence:\"
@@ -2231,7 +2195,7 @@ not desired, then turn off this option."
 
 ;;; Reading Your Mail (:group 'mh-show)
 
-(defcustom-mh mh-bury-show-buffer-flag t
+(defcustom mh-bury-show-buffer-flag t
   "Non-nil means show buffer is buried.
 
 One advantage of not burying the show buffer is that one can
@@ -2242,7 +2206,7 @@ running \\[electric-buffer-list] to see what I mean."
   :group 'mh-show
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-clean-message-header-flag t
+(defcustom mh-clean-message-header-flag t
   "Non-nil means remove extraneous header fields.
 
 See also `mh-invisible-header-fields-default' and
@@ -2251,7 +2215,7 @@ See also `mh-invisible-header-fields-default' and
   :group 'mh-show
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-decode-mime-flag (not (not (locate-library "mm-decode")))
+(defcustom mh-decode-mime-flag (not (not (locate-library "mm-decode")))
   "Non-nil means attachments are handled\\<mh-folder-mode-map>.
 
 MH-E can handle attachments as well if the Gnus `mm-decode'
@@ -2269,7 +2233,7 @@ messages and other graphical widgets. See the options
   :group 'mh-show
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-display-buttons-for-alternatives-flag nil
+(defcustom mh-display-buttons-for-alternatives-flag nil
   "Non-nil means display buttons for all alternative attachments.
 
 Sometimes, a mail program will produce multiple alternatives of
@@ -2281,7 +2245,7 @@ inline and buttons are shown for each of the other alternatives."
   :group 'mh-show
   :package-version '(MH-E . "7.4"))
 
-(defcustom-mh mh-display-buttons-for-inline-parts-flag nil
+(defcustom mh-display-buttons-for-inline-parts-flag nil
   "Non-nil means display buttons for all inline attachments\\<mh-folder-mode-map>.
 
 The sender can request that attachments should be viewed inline so
@@ -2304,7 +2268,7 @@ text (including HTML) and images."
   :group 'mh-show
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-do-not-confirm-flag nil
+(defcustom mh-do-not-confirm-flag nil
   "Non-nil means non-reversible commands do not prompt for confirmation.
 
 Commands such as `mh-pack-folder' prompt to confirm whether to
@@ -2316,7 +2280,7 @@ retracted--without question."
   :group 'mh-show
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-fetch-x-image-url nil
+(defcustom mh-fetch-x-image-url nil
   "Control fetching of \"X-Image-URL:\" header field image.
 
 This option controls the fetching of the \"X-Image-URL:\" header
@@ -2352,7 +2316,7 @@ turned on."
   :group 'mh-show
   :package-version '(MH-E . "7.3"))
 
-(defcustom-mh mh-graphical-smileys-flag t
+(defcustom mh-graphical-smileys-flag t
   "Non-nil means graphical smileys are displayed.
 
 It is a long standing custom to inject body language using a
@@ -2367,7 +2331,7 @@ turned off."
   :group 'mh-show
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-graphical-emphasis-flag t
+(defcustom mh-graphical-emphasis-flag t
   "Non-nil means graphical emphasis is displayed.
 
 A few typesetting features are indicated in ASCII text with
@@ -2384,7 +2348,7 @@ turned off."
   :group 'mh-show
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-highlight-citation-style 'gnus
+(defcustom mh-highlight-citation-style 'gnus
   "Style for highlighting citations.
 
 If the sender of the message has cited other messages in his
@@ -2806,7 +2770,7 @@ Because the function `mh-invisible-headers' uses both
 `mh-invisible-header-fields' and `mh-invisible-header-fields', it
 cannot be run until both variables have been initialized.")
 
-(defcustom-mh mh-invisible-header-fields nil
+(defcustom mh-invisible-header-fields nil
   "Additional header fields to hide.
 
 Header fields that you would like to hide that aren't listed in
@@ -2829,7 +2793,7 @@ See also `mh-clean-message-header-flag'."
   :group 'mh-show
   :package-version '(MH-E . "7.1"))
 
-(defcustom-mh mh-invisible-header-fields-default nil
+(defcustom mh-invisible-header-fields-default nil
   "List of hidden header fields.
 
 The header fields listed in this option are hidden, although you
@@ -2886,7 +2850,7 @@ removed and entries from `mh-invisible-header-fields' are added."
 ;; Compile invisible header fields.
 (mh-invisible-headers)
 
-(defcustom-mh mh-lpr-command-format "lpr -J '%s'"
+(defcustom mh-lpr-command-format "lpr -J '%s'"
   "Command used to print\\<mh-folder-mode-map>.
 
 This option contains the Unix command line which performs the
@@ -2903,7 +2867,7 @@ This option is not used by the commands \\[mh-ps-print-msg] or
   :group 'mh-show
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-max-inline-image-height nil
+(defcustom mh-max-inline-image-height nil
   "Maximum inline image height if \"Content-Disposition:\" is not present.
 
 Some older mail programs do not insert this needed plumbing to
@@ -2919,7 +2883,7 @@ these numbers."
   :group 'mh-show
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-max-inline-image-width nil
+(defcustom mh-max-inline-image-width nil
   "Maximum inline image width if \"Content-Disposition:\" is not present.
 
 Some older mail programs do not insert this needed plumbing to
@@ -2935,7 +2899,7 @@ these numbers."
   :group 'mh-show
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-mhl-format-file nil
+(defcustom mh-mhl-format-file nil
   "Specifies the format file to pass to the \"mhl\" program.
 
 Normally MH-E takes care of displaying messages itself (rather than
@@ -2959,7 +2923,7 @@ file."
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-mime-save-parts-default-directory t
+(defcustom mh-mime-save-parts-default-directory t
   "Default directory to use for \\<mh-folder-mode-map>\\[mh-mime-save-parts].
 
 The default value for this option is \"Prompt Always\" so that
@@ -2975,7 +2939,7 @@ directory's name."
   :group 'mh-show
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-print-background-flag nil
+(defcustom mh-print-background-flag nil
   "Non-nil means messages should be printed in the background\\<mh-folder-mode-map>.
 
 Normally messages are printed in the foreground. If this is slow on
@@ -2991,7 +2955,7 @@ This option is not used by the commands \\[mh-ps-print-msg] or
   :group 'mh-show
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-show-maximum-size 0
+(defcustom mh-show-maximum-size 0
   "Maximum size of message (in bytes) to display automatically.
 
 This option provides an opportunity to skip over large messages
@@ -3001,7 +2965,7 @@ message are shown regardless of size."
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-show-use-xface-flag (>= emacs-major-version 21)
+(defcustom mh-show-use-xface-flag (>= emacs-major-version 21)
   "Non-nil means display face images in MH-show buffers.
 
 MH-E can display the content of \"Face:\", \"X-Face:\", and
@@ -3038,7 +3002,7 @@ The option `mh-fetch-x-image-url' controls the fetching of the
   :group 'mh-show
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-store-default-directory nil
+(defcustom mh-store-default-directory nil
   "Default directory for \\<mh-folder-mode-map>\\[mh-store-msg].
 
 If you would like to change the initial default directory,
@@ -3050,7 +3014,7 @@ the content of these messages."
   :group 'mh-show
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-summary-height nil
+(defcustom mh-summary-height nil
   "Number of lines in MH-Folder buffer (including the mode line).
 
 The default value of this option is \"Automatic\" which means
@@ -3065,7 +3029,7 @@ lines you'd like to see."
 
 ;;; The Speedbar (:group 'mh-speedbar)
 
-(defcustom-mh mh-speed-update-interval 60
+(defcustom mh-speed-update-interval 60
   "Time between speedbar updates in seconds.
 Set to 0 to disable automatic update."
   :type 'integer
@@ -3074,7 +3038,7 @@ Set to 0 to disable automatic update."
 
 ;;; Threading (:group 'mh-thread)
 
-(defcustom-mh mh-show-threads-flag nil
+(defcustom mh-show-threads-flag nil
   "Non-nil means new folders start in threaded mode.
 
 Threading large number of messages can be time consuming so this
@@ -3090,7 +3054,7 @@ threaded is less than `mh-large-folder'."
 ;; mh-tool-bar-folder-buttons and mh-tool-bar-letter-buttons defined
 ;; dynamically in mh-tool-bar.el.
 
-(defcustom-mh mh-tool-bar-search-function 'mh-search
+(defcustom mh-tool-bar-search-function 'mh-search
   "Function called by the tool bar search button.
 
 By default, this is set to `mh-search'. You can also choose
@@ -3105,7 +3069,7 @@ of your own choosing."
 
 ;;; Hooks (:group 'mh-hooks + group where hook described)
 
-(defcustom-mh mh-after-commands-processed-hook nil
+(defcustom mh-after-commands-processed-hook nil
   "Hook run by \\<mh-folder-mode-map>\\[mh-execute-commands] after performing outstanding refile and delete requests.
 
 Variables that are useful in this hook include
@@ -3117,14 +3081,14 @@ folder, which is also available in `mh-current-folder'."
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-alias-reloaded-hook nil
+(defcustom mh-alias-reloaded-hook nil
   "Hook run by `mh-alias-reload' after loading aliases."
   :type 'hook
   :group 'mh-hooks
   :group 'mh-alias
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-annotate-msg-hook nil
+(defcustom mh-annotate-msg-hook nil
   "Hook run when a message is sent and after annotating the scan lines and message.
 Hook functions can access the current folder name with
 `mh-current-folder' and obtain the message numbers of the
@@ -3134,7 +3098,7 @@ annotated messages with `mh-annotate-list'."
   :group 'mh-sending-mail
   :package-version '(MH-E . "8.1"))
 
-(defcustom-mh mh-before-commands-processed-hook nil
+(defcustom mh-before-commands-processed-hook nil
   "Hook run by \\<mh-folder-mode-map>\\[mh-execute-commands] before performing outstanding refile and delete requests.
 
 Variables that are useful in this hook include `mh-delete-list',
@@ -3146,7 +3110,7 @@ used to see which changes will be made to the current folder,
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-before-quit-hook nil
+(defcustom mh-before-quit-hook nil
   "Hook run by \\<mh-folder-mode-map>\\[mh-quit] before quitting MH-E.
 
 This hook is called before the quit occurs, so you might use it
@@ -3159,7 +3123,7 @@ See also `mh-quit-hook'."
   :group 'mh-folder
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-before-send-letter-hook nil
+(defcustom mh-before-send-letter-hook nil
   "Hook run at the beginning of the \\<mh-letter-mode-map>\\[mh-send-letter] command.
 
 For example, if you want to check your spelling in your message
@@ -3170,14 +3134,14 @@ before sending, add the `ispell-message' function."
   :group 'mh-letter
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-blocklist-msg-hook nil
+(defcustom mh-blocklist-msg-hook nil
   "Hook run by \\<mh-letter-mode-map>\\[mh-junk-blocklist] after marking each message for blocklisting."
   :type 'hook
   :group 'mh-hooks
   :group 'mh-show
   :package-version '(MH-E . "8.4"))
 
-(defcustom-mh mh-delete-msg-hook nil
+(defcustom mh-delete-msg-hook nil
   "Hook run by \\<mh-letter-mode-map>\\[mh-delete-msg] after marking each message for deletion.
 
 For example, a past maintainer of MH-E used this once when he
@@ -3187,7 +3151,7 @@ kept statistics on his mail usage."
   :group 'mh-show
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-find-path-hook nil
+(defcustom mh-find-path-hook nil
   "Hook run by `mh-find-path' after reading the user's MH profile.
 
 This hook can be used the change the value of the variables that
@@ -3198,28 +3162,28 @@ between MH and MH-E."
   :group 'mh-e
   :package-version '(MH-E . "7.0"))
 
-(defcustom-mh mh-folder-mode-hook nil
+(defcustom mh-folder-mode-hook nil
   "Hook run by `mh-folder-mode' when visiting a new folder."
   :type 'hook
   :group 'mh-hooks
   :group 'mh-folder
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-forward-hook nil
+(defcustom mh-forward-hook nil
   "Hook run by `mh-forward' on a forwarded letter."
   :type 'hook
   :group 'mh-hooks
   :group 'mh-sending-mail
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-inc-folder-hook nil
+(defcustom mh-inc-folder-hook nil
   "Hook run by \\<mh-folder-mode-map>\\[mh-inc-folder] after incorporating mail into a folder."
   :type 'hook
   :group 'mh-hooks
   :group 'mh-inc
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-insert-signature-hook nil
+(defcustom mh-insert-signature-hook nil
   "Hook run by \\<mh-letter-mode-map>\\[mh-insert-signature] after signature has been inserted.
 
 Hook functions may access the actual name of the file or the
@@ -3232,7 +3196,7 @@ function used to insert the signature with
 
 (define-obsolete-variable-alias 'mh-kill-folder-suppress-prompt-hooks
   'mh-kill-folder-suppress-prompt-functions "24.3")
-(defcustom-mh mh-kill-folder-suppress-prompt-functions '(mh-search-p)
+(defcustom mh-kill-folder-suppress-prompt-functions '(mh-search-p)
   "Abnormal hook run at the beginning of \\<mh-folder-mode-map>\\[mh-kill-folder].
 
 The hook functions are called with no arguments and should return
@@ -3250,7 +3214,7 @@ accident in the \"+inbox\" folder, you will not be happy."
   :group 'mh-folder
   :package-version '(MH-E . "7.4"))
 
-(defcustom-mh mh-letter-mode-hook nil
+(defcustom mh-letter-mode-hook nil
   "Hook run by `mh-letter-mode' on a new letter.
 
 This hook allows you to do some processing before editing a
@@ -3263,14 +3227,14 @@ go."
   :group 'mh-sending-mail
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-mh-to-mime-hook nil
+(defcustom mh-mh-to-mime-hook nil
   "Hook run on the formatted letter by \\<mh-letter-mode-map>\\[mh-mh-to-mime]."
   :type 'hook
   :group 'mh-hooks
   :group 'mh-letter
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-search-mode-hook nil
+(defcustom mh-search-mode-hook nil
   "Hook run upon entry to `mh-search-mode'\\<mh-folder-mode-map>.
 
 If you find that you do the same thing over and over when editing
@@ -3282,7 +3246,7 @@ This can be done with this hook which is called when
   :group 'mh-search
   :package-version '(MH-E . "8.0"))
 
-(defcustom-mh mh-pack-folder-hook nil
+(defcustom mh-pack-folder-hook nil
   "Hook run by \\<mh-folder-mode-map>\\[mh-pack-folder] after renumbering the messages.
 Hook functions can access the current folder name with `mh-current-folder'."
   :type 'hook
@@ -3290,7 +3254,7 @@ Hook functions can access the current folder name with `mh-current-folder'."
   :group 'mh-folder
   :package-version '(MH-E . "8.2"))
 
-(defcustom-mh mh-quit-hook nil
+(defcustom mh-quit-hook nil
   "Hook run by \\<mh-folder-mode-map>\\[mh-quit] after quitting MH-E.
 
 This hook is not run in an MH-E context, so you might use it to
@@ -3302,14 +3266,14 @@ See also `mh-before-quit-hook'."
   :group 'mh-folder
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-refile-msg-hook nil
+(defcustom mh-refile-msg-hook nil
   "Hook run by \\<mh-folder-mode-map>\\[mh-refile-msg] after marking each message for refiling."
   :type 'hook
   :group 'mh-hooks
   :group 'mh-folder
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-show-hook nil
+(defcustom mh-show-hook nil
   "Hook run after \\<mh-folder-mode-map>\\[mh-show] shows a message.
 
 It is the last thing called after messages are displayed. It's
@@ -3320,7 +3284,7 @@ used to affect the behavior of MH-E in general or when
   :group 'mh-show
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-show-mode-hook nil
+(defcustom mh-show-mode-hook nil
   "Hook run upon entry to `mh-show-mode'.
 
 This hook is called early on in the process of the message display,
@@ -3332,7 +3296,7 @@ buffer itself. See also `mh-show-hook'."
   :group 'mh-show
   :package-version '(MH-E . "8.7"))
 
-(defcustom-mh mh-unseen-updated-hook nil
+(defcustom mh-unseen-updated-hook nil
   "Hook run after the unseen sequence has been updated.
 
 The variable `mh-seen-list' can be used by this hook to obtain
@@ -3343,7 +3307,7 @@ sequence."
   :group 'mh-sequences
   :package-version '(MH-E . "6.0"))
 
-(defcustom-mh mh-allowlist-msg-hook nil
+(defcustom mh-allowlist-msg-hook nil
   "Hook run by \\<mh-letter-mode-map>\\[mh-junk-allowlist] after marking each message for allowlisting."
   :type 'hook
   :group 'mh-hooks
@@ -3354,15 +3318,10 @@ sequence."
 
 ;;; Faces (:group 'mh-faces + group where faces described)
 
-(if (boundp 'facemenu-unlisted-faces)
-    ;; This variable was removed in Emacs 22.1.
-    (add-to-list 'facemenu-unlisted-faces "^mh-"))
-
 ;; To add a new face:
 ;; 1. Add entry to variable mh-face-data.
-;; 2. Create face using defface-mh (which removes min-color spec and
-;;    :package-version keyword where these are not supported),
-;;    accessing face data with function mh-face-data.
+;; 2. Create face using defface, accessing face data with function
+;;    mh-face-data.
 ;; 3. Add inherit argument to function mh-face-data if applicable.
 (defvar mh-face-data
   '((mh-folder-followup
@@ -3509,7 +3468,7 @@ sequence."
        (:underline t)))))
   "MH-E face data.
 Used by function `mh-face-data' which returns spec that is
-consumed by `defface-mh'.")
+consumed by `defface'.")
 
 (require 'cus-face)
 
@@ -3535,21 +3494,21 @@ not added to the returned spec."
       (cadr (assq face mh-face-data))
       (error "Could not find %s in mh-face-data" face)))
 
-(defface-mh mh-folder-address
+(defface mh-folder-address
   (mh-face-data 'mh-folder-subject '((t (:inherit mh-folder-subject))))
   "Recipient face."
   :group 'mh-faces
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-blocklisted
+(defface mh-folder-blocklisted
   (mh-face-data 'mh-folder-msg-number '((t (:inherit mh-folder-msg-number))))
   "Blocklisted message face."
   :group 'mh-faces
   :group 'mh-folder
   :package-version '(MH-E . "8.4"))
 
-(defface-mh mh-folder-body
+(defface mh-folder-body
   (mh-face-data 'mh-folder-msg-number
                 '((((class color))
                    (:inherit mh-folder-msg-number))
@@ -3560,7 +3519,7 @@ not added to the returned spec."
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-cur-msg-number
+(defface mh-folder-cur-msg-number
   (mh-face-data 'mh-folder-msg-number
                 '((t (:inherit mh-folder-msg-number :bold t))))
   "Current message number face."
@@ -3568,39 +3527,39 @@ not added to the returned spec."
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-date
+(defface mh-folder-date
   (mh-face-data 'mh-folder-msg-number '((t (:inherit mh-folder-msg-number))))
   "Date face."
   :group 'mh-faces
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-deleted
+(defface mh-folder-deleted
   (mh-face-data 'mh-folder-msg-number '((t (:inherit mh-folder-msg-number))))
   "Deleted message face."
   :group 'mh-faces
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-followup (mh-face-data 'mh-folder-followup)
+(defface mh-folder-followup (mh-face-data 'mh-folder-followup)
   "\"Re:\" face."
   :group 'mh-faces
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-msg-number (mh-face-data 'mh-folder-msg-number)
+(defface mh-folder-msg-number (mh-face-data 'mh-folder-msg-number)
   "Message number face."
   :group 'mh-faces
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-refiled (mh-face-data 'mh-folder-refiled)
+(defface mh-folder-refiled (mh-face-data 'mh-folder-refiled)
   "Refiled message face."
   :group 'mh-faces
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-sent-to-me-hint
+(defface mh-folder-sent-to-me-hint
   (mh-face-data 'mh-folder-msg-number '((t (:inherit mh-folder-date))))
   "Fontification hint face in messages sent directly to us.
 The detection of messages sent to us is governed by the scan
@@ -3610,7 +3569,7 @@ format `mh-scan-format-nmh' and the regular expression
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-sent-to-me-sender
+(defface mh-folder-sent-to-me-sender
   (mh-face-data 'mh-folder-followup '((t (:inherit mh-folder-followup))))
   "Sender face in messages sent directly to us.
 The detection of messages sent to us is governed by the scan
@@ -3620,105 +3579,105 @@ format `mh-scan-format-nmh' and the regular expression
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-subject (mh-face-data 'mh-folder-subject)
+(defface mh-folder-subject (mh-face-data 'mh-folder-subject)
   "Subject face."
   :group 'mh-faces
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-tick (mh-face-data 'mh-folder-tick)
+(defface mh-folder-tick (mh-face-data 'mh-folder-tick)
   "Ticked message face."
   :group 'mh-faces
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-to (mh-face-data 'mh-folder-to)
+(defface mh-folder-to (mh-face-data 'mh-folder-to)
   "\"To:\" face."
   :group 'mh-faces
   :group 'mh-folder
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-folder-allowlisted
+(defface mh-folder-allowlisted
   (mh-face-data 'mh-folder-refiled '((t (:inherit mh-folder-refiled))))
   "Allowlisted message face."
   :group 'mh-faces
   :group 'mh-folder
   :package-version '(MH-E . "8.4"))
 
-(defface-mh mh-letter-header-field (mh-face-data 'mh-letter-header-field)
+(defface mh-letter-header-field (mh-face-data 'mh-letter-header-field)
   "Editable header field value face in draft buffers."
   :group 'mh-faces
   :group 'mh-letter
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-search-folder (mh-face-data 'mh-search-folder)
+(defface mh-search-folder (mh-face-data 'mh-search-folder)
   "Folder heading face in MH-Folder buffers created by searches."
   :group 'mh-faces
   :group 'mh-search
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-show-cc (mh-face-data 'mh-show-cc)
+(defface mh-show-cc (mh-face-data 'mh-show-cc)
   "Face used to highlight \"cc:\" header fields."
   :group 'mh-faces
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-show-date (mh-face-data 'mh-show-date)
+(defface mh-show-date (mh-face-data 'mh-show-date)
   "Face used to highlight \"Date:\" header fields."
   :group 'mh-faces
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-show-from (mh-face-data 'mh-show-from)
+(defface mh-show-from (mh-face-data 'mh-show-from)
   "Face used to highlight \"From:\" header fields."
   :group 'mh-faces
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-show-header (mh-face-data 'mh-show-header)
+(defface mh-show-header (mh-face-data 'mh-show-header)
   "Face used to deemphasize less interesting header fields."
   :group 'mh-faces
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-show-pgg-bad (mh-face-data 'mh-show-pgg-bad)
+(defface mh-show-pgg-bad (mh-face-data 'mh-show-pgg-bad)
   "Bad PGG signature face."
   :group 'mh-faces
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-show-pgg-good (mh-face-data 'mh-show-pgg-good)
+(defface mh-show-pgg-good (mh-face-data 'mh-show-pgg-good)
   "Good PGG signature face."
   :group 'mh-faces
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-show-pgg-unknown (mh-face-data 'mh-show-pgg-unknown)
+(defface mh-show-pgg-unknown (mh-face-data 'mh-show-pgg-unknown)
   "Unknown or untrusted PGG signature face."
   :group 'mh-faces
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-show-signature (mh-face-data 'mh-show-signature)
+(defface mh-show-signature (mh-face-data 'mh-show-signature)
   "Signature face."
   :group 'mh-faces
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-show-subject
+(defface mh-show-subject
   (mh-face-data 'mh-folder-subject '((t (:inherit mh-folder-subject))))
   "Face used to highlight \"Subject:\" header fields."
   :group 'mh-faces
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-show-to (mh-face-data 'mh-show-to)
+(defface mh-show-to (mh-face-data 'mh-show-to)
   "Face used to highlight \"To:\" header fields."
   :group 'mh-faces
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-show-xface
+(defface mh-show-xface
   (mh-face-data 'mh-show-from '((t (:inherit (mh-show-from highlight)))))
 "X-Face image face.
 The background and foreground are used in the image."
@@ -3726,13 +3685,13 @@ The background and foreground are used in the image."
   :group 'mh-show
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-speedbar-folder (mh-face-data 'mh-speedbar-folder)
+(defface mh-speedbar-folder (mh-face-data 'mh-speedbar-folder)
   "Basic folder face."
   :group 'mh-faces
   :group 'mh-speedbar
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-speedbar-folder-with-unseen-messages
+(defface mh-speedbar-folder-with-unseen-messages
   (mh-face-data 'mh-speedbar-folder
                 '((t (:inherit mh-speedbar-folder :bold t))))
   "Folder face when folder contains unread messages."
@@ -3740,14 +3699,14 @@ The background and foreground are used in the image."
   :group 'mh-speedbar
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-speedbar-selected-folder
+(defface mh-speedbar-selected-folder
   (mh-face-data 'mh-speedbar-selected-folder)
   "Selected folder face."
   :group 'mh-faces
   :group 'mh-speedbar
   :package-version '(MH-E . "8.0"))
 
-(defface-mh mh-speedbar-selected-folder-with-unseen-messages
+(defface mh-speedbar-selected-folder-with-unseen-messages
   (mh-face-data 'mh-speedbar-selected-folder
                 '((t (:inherit mh-speedbar-selected-folder :bold t))))
   "Selected folder face when folder contains unread messages."
index aabcdd2466d94e3838c0b4e4729d5d56cfb49fcf..c423d22e8921c49a56a78a783897380756b645df 100644 (file)
@@ -72,10 +72,8 @@ the MH mail system."
 
 ;;; Desktop Integration
 
-;; desktop-buffer-mode-handlers appeared in Emacs 22.
-(if (boundp 'desktop-buffer-mode-handlers)
-    (add-to-list 'desktop-buffer-mode-handlers
-                 '(mh-folder-mode . mh-restore-desktop-buffer)))
+(add-to-list 'desktop-buffer-mode-handlers
+             '(mh-folder-mode . mh-restore-desktop-buffer))
 
 (defun mh-restore-desktop-buffer (_file-name name _misc)
   "Restore an MH folder buffer specified in a desktop file.
index 59d8175b62f3d48572733367a594c8ac6618b30d..1f7902640a19546f735c80c048a26f6646eaa660 100644 (file)
@@ -692,7 +692,7 @@ and `mh-ins-buf-prefix' is not inserted."
           ;; Find displayed message
           (with-current-buffer show-buffer
             (let* ((from-attr (mh-extract-from-attribution))
-                   (yank-region (mh-mark-active-p nil))
+                   (yank-region mark-active)
                    (mh-ins-str
                     (cond ((and yank-region
                                 (or (eq 'supercite mh-yank-behavior)
index d2a09037fe4d7c8ca46c875b6104d03dfbc1e9f1..3d9128c15a7e92ac423e96ea4ba48666d2356ef9 100644 (file)
     ("application/emacs-lisp" mm-display-elisp-inline identity)
     ("application/x-emacs-lisp" mm-display-elisp-inline identity)
     ("text/html"
-     ,(if (fboundp 'mm-inline-text-html) 'mm-inline-text-html 'mm-inline-text)
+     mm-inline-text-html
      (lambda (handle)
        mm-text-html-renderer))
     ("text/x-vcard"
@@ -202,8 +202,6 @@ Set from last use.")
     (?D pressed-details ?s)))
 (defvar mh-mime-security-button-map
   (let ((map (make-sparse-keymap)))
-    (unless (>= (string-to-number emacs-version) 21)
-      (set-keymap-parent map mh-show-mode-map))
     (define-key map "\r" #'mh-press-button)
     (define-key map [mouse-2] #'mh-push-button)
     map))
@@ -1144,6 +1142,7 @@ this ;-)"
 This is used to decide if smileys and graphical emphasis should be
 displayed."
   (let ((max nil))
+    ;; FIXME: font-lock-maximum-size is obsolete.
     (when (and (boundp 'font-lock-maximum-size) font-lock-maximum-size)
       (cond ((numberp font-lock-maximum-size)
              (setq max font-lock-maximum-size))
@@ -1768,8 +1767,7 @@ initialized. Always use the command `mh-have-file-command'.")
 'file -i' is used to get MIME type of composition insertion."
   (when (eq mh-have-file-command 'undefined)
     (setq mh-have-file-command
-          (and (fboundp 'executable-find)
-               (executable-find "file") ; file command exists
+          (and (executable-find "file") ; file command exists
                                         ;   and accepts -i and -b args.
                (zerop (call-process "file" nil nil nil "-i" "-b"
                                     (expand-file-name "inc" mh-progs))))))
index dc2ed613b1a00d6d38784787607df36041c43073..f4dd65177f7102f028dfb8c04a6412a5835e7e69 100644 (file)
@@ -577,7 +577,7 @@ Otherwise, the message number at point is returned.
 
 This function is usually used with `mh-iterate-on-range' in order to
 provide a uniform interface to MH-E functions."
-  (cond ((mh-mark-active-p t) (cons (region-beginning) (region-end)))
+  (cond ((and transient-mark-mode mark-active) (cons (region-beginning) (region-end)))
         (current-prefix-arg (mh-read-range range-prompt nil nil t t))
         (default default)
         (t (mh-get-msg-num t))))
index d2122523744e49dd5ea06bd7a881a7db7d366f60..4b98d6c4879fab2a8acd3a7bae9dc0b85bd8c01c 100644 (file)
@@ -328,8 +328,7 @@ ignored if VISIBLE-HEADERS is non-nil."
 (defun mh-summary-height ()
   "Return ideal value for the variable `mh-summary-height'.
 The current frame height is taken into consideration."
-  (or (and (fboundp 'frame-height)
-           (> (frame-height) 24)
+  (or (and (> (frame-height) 24)
            (min 10 (/ (frame-height) 6)))
       4))
 
index a019c28b8839255ccefa8d785255b51c8bacbec0..82b108c8c8de3cea49aa817b0d9c9515af715f2d 100644 (file)
@@ -374,12 +374,9 @@ uses."
 (defvar mh-speed-flists-folder nil)
 
 (defmacro mh-process-kill-without-query (process)
-  "PROCESS can be killed without query on Emacs exit.
-Avoid using `process-kill-without-query' if possible since it is
-now obsolete."
-  (if (fboundp 'set-process-query-on-exit-flag)
-      `(set-process-query-on-exit-flag ,process nil)
-    `(process-kill-without-query ,process)))
+  "PROCESS can be killed without query on Emacs exit."
+  (declare (obsolete set-process-query-on-exit-flag "29.1"))
+  `(set-process-query-on-exit-flag ,process nil))
 
 ;;;###mh-autoload
 (defun mh-speed-flists (force &rest folders)
@@ -427,7 +424,7 @@ flists is run only for that one folder."
                             (or mh-speed-flists-folder '("-recurse"))))
                ;; Run flists on all folders the next time around...
                (setq mh-speed-flists-folder nil)
-               (mh-process-kill-without-query mh-speed-flists-process)
+               (set-process-query-on-exit-flag mh-speed-flists-process nil)
                (set-process-filter mh-speed-flists-process
                                    #'mh-speed-parse-flists-output)))))))
 
index d44cca361a89a998d4513c25a81678b512a3109e..0c1bcdfefd5f6c06358688accb28b4006f6d031a 100644 (file)
@@ -34,8 +34,7 @@
   "Determine at run time what function should be called to display X-Face.")
 (make-obsolete-variable 'mh-show-xface-function nil "29.1")
 
-(defvar mh-uncompface-executable
-  (and (fboundp 'executable-find) (executable-find "uncompface")))
+(defvar mh-uncompface-executable (executable-find "uncompface"))
 
 \f
 
@@ -86,8 +85,7 @@ in this order is used."
 (defun mh-face-to-png (data)
   "Convert base64 encoded DATA to png image."
   (with-temp-buffer
-    (if (fboundp 'set-buffer-multibyte)
-        (set-buffer-multibyte nil))
+    (set-buffer-multibyte nil)
     (insert data)
     (ignore-errors (base64-decode-region (point-min) (point-max)))
     (buffer-string)))
@@ -95,8 +93,7 @@ in this order is used."
 (defun mh-uncompface (data)
   "Run DATA through `uncompface' to generate bitmap."
   (with-temp-buffer
-    (if (fboundp 'set-buffer-multibyte)
-        (set-buffer-multibyte nil))
+    (set-buffer-multibyte nil)
     (insert data)
     (when (and mh-uncompface-executable
                (equal (call-process-region (point-min) (point-max)
@@ -232,8 +229,7 @@ file contents as a string is returned. If FILE is nil, then both
 elements of the list are nil."
   (if (stringp file)
       (with-temp-buffer
-        (if (fboundp 'set-buffer-multibyte)
-            (set-buffer-multibyte nil))
+        (set-buffer-multibyte nil)
         (let ((type (and (string-match ".*\\.\\(...\\)$" file)
                          (intern (match-string 1 file)))))
           (insert-file-contents-literally file)