(eval-when-compile
`((,(concat "(\\("
;; Function declarations (use font-lock-function-name-face).
- "\\(mh-def\\(un\\|macro\\)-compat\\)\\|"
+ "\\(def\\(un\\|macro\\)-mh\\)\\|"
;; Variable declarations (use font-lock-variable-name-face).
- "\\(mh-def\\(custom\\|face\\)\\)\\|"
+ "\\(def\\(custom\\|face\\)-mh\\)\\|"
;; Group declarations (use font-lock-type-face).
- "\\(mh-defgroup\\)"
+ "\\(defgroup-mh\\)"
"\\)\\>"
;; Any whitespace and defined object.
"[ \t'\(]*"
(t t))
collect keyword))))
-(defmacro mh-defgroup (symbol members doc &rest 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.
keyword, introduced in Emacs 22."
(declare (doc-string 3))
`(defgroup ,symbol ,members ,doc ,@(mh-strip-package-version args)))
-(put 'mh-defgroup 'lisp-indent-function 'defun)
+(put 'defgroup-mh 'lisp-indent-function 'defun)
-(defmacro mh-defcustom (symbol value doc &rest 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.
keyword, introduced in Emacs 22."
(declare (doc-string 3))
`(defcustom ,symbol ,value ,doc ,@(mh-strip-package-version args)))
-(put 'mh-defcustom 'lisp-indent-function 'defun)
+(put 'defcustom-mh 'lisp-indent-function 'defun)
-(defmacro mh-defface (face spec doc &rest 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.
keyword, introduced in Emacs 22."
(declare (doc-string 3))
`(defface ,face ,spec ,doc ,@(mh-strip-package-version args)))
-(put 'mh-defface 'lisp-indent-function 'defun)
+(put 'defface-mh 'lisp-indent-function 'defun)
\f
;;; Variant Support
-(mh-defcustom mh-path nil
+(defcustom-mh mh-path nil
"*Additional list of directories to search for MH.
See `mh-variant'."
:group 'mh-e
(mapconcat '(lambda (x) (format "%s" (car x)))
(mh-variants) " or "))))))
-(mh-defcustom mh-variant 'autodetect
+(defcustom-mh mh-variant 'autodetect
"*Specifies the variant used by MH-E.
The default setting of this option is \"Auto-detect\" which means
;;; MH-E Customization Groups
-(mh-defgroup mh-e nil
+(defgroup-mh mh-e nil
"Emacs interface to the MH mail system.
MH is the Rand Mail Handler. Other implementations include nmh
and GNU mailutils."
:group 'mail
:package-version '(MH-E . "8.0"))
-(mh-defgroup mh-alias nil
+(defgroup-mh mh-alias nil
"Aliases."
:link '(custom-manual "(mh-e)Aliases")
:prefix "mh-alias-"
:group 'mh-e
:package-version '(MH-E . "7.1"))
-(mh-defgroup mh-folder nil
+(defgroup-mh 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"))
-(mh-defgroup mh-folder-selection nil
+(defgroup-mh mh-folder-selection nil
"Folder selection."
:prefix "mh-"
:link '(custom-manual "(mh-e)Folder Selection")
:group 'mh-e
:package-version '(MH-E . "8.0"))
-(mh-defgroup mh-identity nil
+(defgroup-mh mh-identity nil
"Identities."
:link '(custom-manual "(mh-e)Identities")
:prefix "mh-identity-"
:group 'mh-e
:package-version '(MH-E . "7.1"))
-(mh-defgroup mh-inc nil
+(defgroup-mh 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"))
-(mh-defgroup mh-junk nil
+(defgroup-mh 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"))
-(mh-defgroup mh-letter nil
+(defgroup-mh mh-letter nil
"Editing a draft."
:prefix "mh-"
:link '(custom-manual "(mh-e)Editing Drafts")
:group 'mh-e
:package-version '(MH-E . "7.1"))
-(mh-defgroup mh-ranges nil
+(defgroup-mh mh-ranges nil
"Ranges."
:prefix "mh-"
:link '(custom-manual "(mh-e)Ranges")
:group 'mh-e
:package-version '(MH-E . "8.0"))
-(mh-defgroup mh-scan-line-formats nil
+(defgroup-mh 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"))
-(mh-defgroup mh-search nil
+(defgroup-mh mh-search nil
"Searching."
:link '(custom-manual "(mh-e)Searching")
:prefix "mh-search-"
:group 'mh-e
:package-version '(MH-E . "8.0"))
-(mh-defgroup mh-sending-mail nil
+(defgroup-mh mh-sending-mail nil
"Sending mail."
:prefix "mh-"
:link '(custom-manual "(mh-e)Sending Mail")
:group 'mh-e
:package-version '(MH-E . "8.0"))
-(mh-defgroup mh-sequences nil
+(defgroup-mh mh-sequences nil
"Sequences."
:prefix "mh-"
:link '(custom-manual "(mh-e)Sequences")
:group 'mh-e
:package-version '(MH-E . "8.0"))
-(mh-defgroup mh-show nil
+(defgroup-mh mh-show nil
"Reading your mail."
:prefix "mh-"
:link '(custom-manual "(mh-e)Reading Mail")
:group 'mh-e
:package-version '(MH-E . "7.1"))
-(mh-defgroup mh-speedbar nil
+(defgroup-mh mh-speedbar nil
"The speedbar."
:prefix "mh-speed-"
:link '(custom-manual "(mh-e)Speedbar")
:group 'mh-e
:package-version '(MH-E . "8.0"))
-(mh-defgroup mh-thread nil
+(defgroup-mh mh-thread nil
"Threading."
:prefix "mh-thread-"
:link '(custom-manual "(mh-e)Threading")
:group 'mh-e
:package-version '(MH-E . "8.0"))
-(mh-defgroup mh-tool-bar nil
+(defgroup-mh 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"))
-(mh-defgroup mh-hooks nil
+(defgroup-mh mh-hooks nil
"MH-E hooks."
:link '(custom-manual "(mh-e)Top")
:prefix "mh-"
:group 'mh-e
:package-version '(MH-E . "7.1"))
-(mh-defgroup mh-faces nil
+(defgroup-mh mh-faces nil
"Faces used in MH-E."
:link '(custom-manual "(mh-e)Top")
:prefix "mh-"
;;; Aliases (:group 'mh-alias)
-(mh-defcustom mh-alias-completion-ignore-case-flag t
+(defcustom-mh 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
:group 'mh-alias
:package-version '(MH-E . "7.1"))
-(mh-defcustom mh-alias-expand-aliases-flag nil
+(defcustom-mh 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
:group 'mh-alias
:package-version '(MH-E . "7.1"))
-(mh-defcustom mh-alias-flash-on-comma t
+(defcustom-mh 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
:group 'mh-alias
:package-version '(MH-E . "7.1"))
-(mh-defcustom mh-alias-insert-file nil
+(defcustom-mh mh-alias-insert-file nil
"*Filename used to store a new MH-E alias.
The default setting of this option is \"Use Aliasfile Profile
:group 'mh-alias
:package-version '(MH-E . "7.1"))
-(mh-defcustom mh-alias-insertion-location 'sorted
+(defcustom-mh 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
:group 'mh-alias
:package-version '(MH-E . "7.1"))
-(mh-defcustom mh-alias-local-users t
+(defcustom-mh mh-alias-local-users t
"*If on, local users are added to alias completion.
Aliases are created from \"/etc/passwd\" entries with a user ID
:group 'mh-alias
:package-version '(MH-E . "7.1"))
-(mh-defcustom mh-alias-local-users-prefix "local."
+(defcustom-mh 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\".
:group 'mh-alias
:package-version '(MH-E . "7.4"))
-(mh-defcustom mh-alias-passwd-gecos-comma-separator-flag t
+(defcustom-mh 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
;;; Organizing Your Mail with Folders (:group 'mh-folder)
-(mh-defcustom mh-new-messages-folders t
+(defcustom-mh mh-new-messages-folders t
"Folders searched for the \"unseen\" sequence.
Set this option to \"Inbox\" to search the \"+inbox\" folder or
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-ticked-messages-folders t
+(defcustom-mh mh-ticked-messages-folders t
"Folders searched for `mh-tick-seq'.
Set this option to \"Inbox\" to search the \"+inbox\" folder or
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-large-folder 200
+(defcustom-mh 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
:group 'mh-folder
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-recenter-summary-flag nil
+(defcustom-mh 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
:group 'mh-folder
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-recursive-folders-flag nil
+(defcustom-mh 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"))
-(mh-defcustom mh-sortm-args nil
+(defcustom-mh mh-sortm-args nil
"*Additional arguments for \"sortm\"\\<mh-folder-mode-map>.
This option is consulted when a prefix argument is used with
;;; Folder Selection (:group 'mh-folder-selection)
-(mh-defcustom mh-default-folder-for-message-function nil
+(defcustom-mh 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
:group 'mh-folder-selection
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-default-folder-list nil
+(defcustom-mh mh-default-folder-list nil
"*List of addresses and folders.
The folder name associated with the first address found in this
:group 'mh-folder-selection
:package-version '(MH-E . "7.2"))
-(mh-defcustom mh-default-folder-must-exist-flag t
+(defcustom-mh 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
:group 'mh-folder-selection
:package-version '(MH-E . "7.2"))
-(mh-defcustom mh-default-folder-prefix ""
+(defcustom-mh mh-default-folder-prefix ""
"*Prefix used for folder names generated from aliases.
The prefix is used to prevent clutter in your mail directory.
Real definition will take effect when mh-identity is loaded."
nil)))
-(mh-defcustom mh-identity-list nil
+(defcustom-mh mh-identity-list nil
"*List of identities.
To customize this option, click on the \"INS\" button and enter a label
:group 'mh-identity
:package-version '(MH-E . "7.1"))
-(mh-defcustom mh-auto-fields-list nil
+(defcustom-mh 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
:group 'mh-identity
:package-version '(MH-E . "7.3"))
-(mh-defcustom mh-auto-fields-prompt-flag t
+(defcustom-mh 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"))
-(mh-defcustom mh-identity-default nil
+(defcustom-mh mh-identity-default nil
"Default identity to use when `mh-letter-mode' is called.
See `mh-identity-list'."
:type (append
:group 'mh-identity
:package-version '(MH-E . "7.1"))
-(mh-defcustom mh-identity-handlers
+(defcustom-mh mh-identity-handlers
'(("From" . mh-identity-handler-top)
(":default" . mh-identity-handler-bottom)
(":attribution-verb" . mh-identity-handler-attribution-verb)
;;; Incorporating Your Mail (:group 'mh-inc)
-(mh-defcustom mh-inc-prog "inc"
+(defcustom-mh mh-inc-prog "inc"
"*Program to incorporate new mail into a folder.
This program generates a one-line summary for each of the new
Real definition will take effect when mh-inc is loaded."
nil)))
-(mh-defcustom mh-inc-spool-list nil
+(defcustom-mh mh-inc-spool-list nil
"*Alternate spool files.
You can use the `mh-inc-spool-list' variable to direct MH-E to
until (executable-find (symbol-name (car element)))
finally return (car element)))))
-(mh-defcustom mh-junk-background nil
+(defcustom-mh mh-junk-background nil
"If on, spam programs are run in background.
By default, the programs are run in the foreground, but this can
:group 'mh-junk
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-junk-disposition nil
+(defcustom-mh 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"))
-(mh-defcustom mh-junk-program nil
+(defcustom-mh mh-junk-program nil
"Spam program that MH-E should use.
The default setting of this option is \"Auto-detect\" which means
;;; Editing a Draft (:group 'mh-letter)
-(mh-defcustom mh-compose-insertion (if (locate-library "mml") 'mml 'mh)
+(defcustom-mh 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
:group 'mh-letter
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-compose-skipped-header-fields
+(defcustom-mh 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."
:group 'mh-letter
:package-version '(MH-E . "7.4"))
-(mh-defcustom mh-compose-space-does-completion-flag nil
+(defcustom-mh 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"))
-(mh-defcustom mh-delete-yanked-msg-window-flag nil
+(defcustom-mh 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
:group 'mh-letter
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-extract-from-attribution-verb "wrote:"
+(defcustom-mh 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
:group 'mh-letter
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-ins-buf-prefix "> "
+(defcustom-mh 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
:group 'mh-letter
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-letter-complete-function 'ispell-complete-word
+(defcustom-mh mh-letter-complete-function 'ispell-complete-word
"*Function to call when completing outside of address or folder fields.
In the body of the message,
:group 'mh-letter
:package-version '(MH-E . "7.1"))
-(mh-defcustom mh-letter-fill-column 72
+(defcustom-mh 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
:group 'mh-letter
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-mml-method-default (if mh-pgp-support-flag "pgpmime" "none")
+(defcustom-mh 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
:group 'mh-letter
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-signature-file-name "~/.signature"
+(defcustom-mh mh-signature-file-name "~/.signature"
"*Source of user's signature.
By default, the text of your signature is taken from the file
:group 'mh-letter
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-signature-separator-flag t
+(defcustom-mh 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
:group 'mh-letter
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-x-face-file "~/.face"
+(defcustom-mh 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:\"
:group 'mh-letter
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-yank-behavior 'attribution
+(defcustom-mh 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
;;; Ranges (:group 'mh-ranges)
-(mh-defcustom mh-interpret-number-as-range-flag t
+(defcustom-mh 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
Real definition, below, uses variables that aren't defined yet."
(set-default symbol value))))
-(mh-defcustom mh-adaptive-cmd-note-flag t
+(defcustom-mh 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,
"unless you use \"Use MH-E scan Format\"")
(set-default symbol value)))
-(mh-defcustom mh-scan-format-file t
+(defcustom-mh 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
"is set to \"Use MH-E scan Format\"")
(set-default symbol value)))
-(mh-defcustom mh-scan-prog "scan"
+(defcustom-mh mh-scan-prog "scan"
"*Program used to scan messages.
The name of the program that generates a listing of one line per
;;; Searching (:group 'mh-search)
-(mh-defcustom mh-search-program nil
+(defcustom-mh mh-search-program nil
"Search program that MH-E shall use.
The default setting of this option is \"Auto-detect\" which means
;;; Sending Mail (:group 'mh-sending-mail)
-(mh-defcustom mh-compose-forward-as-mime-flag t
+(defcustom-mh 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
:group 'mh-sending-mail
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-compose-letter-function nil
+(defcustom-mh mh-compose-letter-function nil
"Invoked when starting a new draft.
However, it is the last function called before you edit your
:group 'mh-sending-mail
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-compose-prompt-flag nil
+(defcustom-mh 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"))
-(mh-defcustom mh-forward-subject-format "%s: %s"
+(defcustom-mh mh-forward-subject-format "%s: %s"
"*Format string for forwarded message subject.
This option is a string which includes two escapes (\"%s\"). The
:group 'mh-sending-mail
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-insert-x-mailer-flag t
+(defcustom-mh 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
:group 'mh-sending-mail
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-redist-full-contents-flag nil
+(defcustom-mh 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
:group 'mh-sending-mail
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-reply-default-reply-to nil
+(defcustom-mh 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
:group 'mh-sending-mail
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-reply-show-message-flag t
+(defcustom-mh 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
;; the docstring: "Additional sequences that should not to be preserved can be
;; specified by setting `mh-unpropagated-sequences' appropriately." XXX
-(mh-defcustom mh-refile-preserves-sequences-flag t
+(defcustom-mh 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:\"
:group 'mh-sequences
:package-version '(MH-E . "7.4"))
-(mh-defcustom mh-tick-seq 'tick
+(defcustom-mh mh-tick-seq 'tick
"The name of the MH sequence for ticked messages.
You can customize this option if you already use the \"tick\"
:group 'mh-sequences
:package-version '(MH-E . "7.3"))
-(mh-defcustom mh-update-sequences-after-mh-show-flag t
+(defcustom-mh 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
;;; Reading Your Mail (:group 'mh-show)
-(mh-defcustom mh-bury-show-buffer-flag t
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-clean-message-header-flag t
+(defcustom-mh mh-clean-message-header-flag t
"*Non-nil means remove extraneous header fields.
See also `mh-invisible-header-fields-default' and
:group 'mh-show
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-decode-mime-flag (not (not (locate-library "mm-decode")))
+(defcustom-mh 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'
:group 'mh-show
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-display-buttons-for-alternatives-flag nil
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "7.4"))
-(mh-defcustom mh-display-buttons-for-inline-parts-flag nil
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-do-not-confirm-flag nil
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-fetch-x-image-url nil
+(defcustom-mh mh-fetch-x-image-url nil
"*Control fetching of \"X-Image-URL:\" header field image.
Ths option controls the fetching of the \"X-Image-URL:\" header
:group 'mh-show
:package-version '(MH-E . "7.3"))
-(mh-defcustom mh-graphical-smileys-flag t
+(defcustom-mh mh-graphical-smileys-flag t
"*Non-nil means graphical smileys are displayed.
It is a long standing custom to inject body language using a
:group 'mh-show
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-graphical-emphasis-flag t
+(defcustom-mh mh-graphical-emphasis-flag t
"*Non-nil means graphical emphasis is displayed.
A few typesetting features are indicated in ASCII text with
:group 'mh-show
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-highlight-citation-style 'gnus
+(defcustom-mh mh-highlight-citation-style 'gnus
"Style for highlighting citations.
If the sender of the message has cited other messages in his
`mh-invisible-header-fields' and `mh-invisible-header-fields', it
cannot be run until both variables have been initialized.")
-(mh-defcustom mh-invisible-header-fields nil
+(defcustom-mh mh-invisible-header-fields nil
"*Additional header fields to hide.
Header fields that you would like to hide that aren't listed in
:group 'mh-show
:package-version '(MH-E . "7.1"))
-(mh-defcustom mh-invisible-header-fields-default nil
+(defcustom-mh mh-invisible-header-fields-default nil
"*List of hidden header fields.
The header fields listed in this option are hidden, although you
;; Compile invisible header fields.
(mh-invisible-headers)
-(mh-defcustom mh-lpr-command-format "lpr -J '%s'"
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-max-inline-image-height nil
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-max-inline-image-width nil
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-mhl-format-file nil
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-mime-save-parts-default-directory t
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-print-background-flag nil
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-show-maximum-size 0
+(defcustom-mh mh-show-maximum-size 0
"*Maximum size of message (in bytes) to display automatically.
This option provides an opportunity to skip over large messages
:group 'mh-show
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-show-use-xface-flag (>= emacs-major-version 21)
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-store-default-directory nil
+(defcustom-mh 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,
:group 'mh-show
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-summary-height nil
+(defcustom-mh 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
;;; The Speedbar (:group 'mh-speedbar)
-(mh-defcustom mh-speed-update-interval 60
+(defcustom-mh mh-speed-update-interval 60
"Time between speedbar updates in seconds.
Set to 0 to disable automatic update."
:type 'integer
;;; Threading (:group 'mh-thread)
-(mh-defcustom mh-show-threads-flag nil
+(defcustom-mh 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
;; mh-tool-bar-folder-buttons and mh-tool-bar-letter-buttons defined
;; dynamically in mh-tool-bar.el.
-(mh-defcustom mh-tool-bar-search-function 'mh-search
+(defcustom-mh 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
;; XEmacs has a couple of extra customizations...
(mh-do-in-xemacs
- (mh-defcustom mh-xemacs-use-tool-bar-flag mh-xemacs-has-tool-bar-flag
+ (defcustom-mh mh-xemacs-use-tool-bar-flag mh-xemacs-has-tool-bar-flag
"*If non-nil, use tool bar.
This option controls whether to show the MH-E icons at all. By
(set-default symbol value))
:package-version '(MH-E . "7.3"))
- (mh-defcustom mh-xemacs-tool-bar-position nil
+ (defcustom-mh mh-xemacs-tool-bar-position nil
"*Tool bar location.
This option controls the placement of the tool bar along the four
;;; Hooks (:group 'mh-hooks + group where hook described)
-(mh-defcustom mh-after-commands-processed-hook nil
+(defcustom-mh 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
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-alias-reloaded-hook nil
+(defcustom-mh 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"))
-(mh-defcustom mh-before-commands-processed-hook nil
+(defcustom-mh 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'
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-before-quit-hook nil
+(defcustom-mh 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
:group 'mh-folder
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-before-send-letter-hook nil
+(defcustom-mh 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
:group 'mh-letter
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-delete-msg-hook nil
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-find-path-hook nil
+(defcustom-mh 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
:group 'mh-e
:package-version '(MH-E . "7.0"))
-(mh-defcustom mh-folder-mode-hook nil
+(defcustom-mh 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"))
-(mh-defcustom mh-forward-hook nil
+(defcustom-mh 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"))
-(mh-defcustom mh-inc-folder-hook nil
+(defcustom-mh 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"))
-(mh-defcustom mh-insert-signature-hook nil
+(defcustom-mh 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
:group 'mh-letter
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-kill-folder-suppress-prompt-hooks '(mh-search-p)
+(defcustom-mh mh-kill-folder-suppress-prompt-hooks '(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
:group 'mh-folder
:package-version '(MH-E . "7.4"))
-(mh-defcustom mh-letter-mode-hook nil
+(defcustom-mh 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
:group 'mh-sending-mail
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-mh-to-mime-hook nil
+(defcustom-mh 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"))
-(mh-defcustom mh-search-mode-hook nil
+(defcustom-mh 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
:group 'mh-search
:package-version '(MH-E . "8.0"))
-(mh-defcustom mh-quit-hook nil
+(defcustom-mh 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
:group 'mh-folder
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-refile-msg-hook nil
+(defcustom-mh 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"))
-(mh-defcustom mh-show-hook nil
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-show-mode-hook nil
+(defcustom-mh 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
:group 'mh-show
:package-version '(MH-E . "6.0"))
-(mh-defcustom mh-unseen-updated-hook nil
+(defcustom-mh 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
;; To add a new face:
;; 1. Add entry to variable mh-face-data.
-;; 2. Create face using mh-defface (which removes min-color spec and
+;; 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.
;; 3. Add inherit argument to function mh-face-data if applicable.
(:underline t)))))
"MH-E face data.
Used by function `mh-face-data' which returns spec that is
-consumed by `mh-defface'.")
+consumed by `defface-mh'.")
(require 'cus-face)
(setq new-spec (cons entry new-spec)))))
new-spec))))
-(mh-defface mh-folder-address
+(defface-mh 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"))
-(mh-defface mh-folder-body
+(defface-mh mh-folder-body
(mh-face-data 'mh-folder-msg-number
'((((class color))
(:inherit mh-folder-msg-number))
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defface mh-folder-cur-msg-number
+(defface-mh mh-folder-cur-msg-number
(mh-face-data 'mh-folder-msg-number
'((t (:inherit mh-folder-msg-number :bold t))))
"Current message number face."
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defface mh-folder-date
+(defface-mh 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"))
-(mh-defface mh-folder-deleted
+(defface-mh 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"))
-(mh-defface mh-folder-followup (mh-face-data 'mh-folder-followup)
+(defface-mh mh-folder-followup (mh-face-data 'mh-folder-followup)
"\"Re:\" face."
:group 'mh-faces
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defface mh-folder-msg-number (mh-face-data 'mh-folder-msg-number)
+(defface-mh 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"))
-(mh-defface mh-folder-refiled (mh-face-data 'mh-folder-refiled)
+(defface-mh mh-folder-refiled (mh-face-data 'mh-folder-refiled)
"Refiled message face."
:group 'mh-faces
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defface mh-folder-sent-to-me-hint
+(defface-mh 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
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defface mh-folder-sent-to-me-sender
+(defface-mh 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
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defface mh-folder-subject (mh-face-data 'mh-folder-subject)
+(defface-mh mh-folder-subject (mh-face-data 'mh-folder-subject)
"Subject face."
:group 'mh-faces
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defface mh-folder-tick (mh-face-data 'mh-folder-tick)
+(defface-mh mh-folder-tick (mh-face-data 'mh-folder-tick)
"Ticked message face."
:group 'mh-faces
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defface mh-folder-to (mh-face-data 'mh-folder-to)
+(defface-mh mh-folder-to (mh-face-data 'mh-folder-to)
"\"To:\" face."
:group 'mh-faces
:group 'mh-folder
:package-version '(MH-E . "8.0"))
-(mh-defface mh-letter-header-field (mh-face-data 'mh-letter-header-field)
+(defface-mh 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"))
-(mh-defface mh-search-folder (mh-face-data 'mh-search-folder)
+(defface-mh 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"))
-(mh-defface mh-show-cc (mh-face-data 'mh-show-cc)
+(defface-mh 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"))
-(mh-defface mh-show-date (mh-face-data 'mh-show-date)
+(defface-mh 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"))
-(mh-defface mh-show-from (mh-face-data 'mh-show-from)
+(defface-mh 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"))
-(mh-defface mh-show-header (mh-face-data 'mh-show-header)
+(defface-mh 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"))
-(mh-defface mh-show-pgg-bad (mh-face-data 'mh-show-pgg-bad)
+(defface-mh 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"))
-(mh-defface mh-show-pgg-good (mh-face-data 'mh-show-pgg-good)
+(defface-mh 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"))
-(mh-defface mh-show-pgg-unknown (mh-face-data 'mh-show-pgg-unknown)
+(defface-mh 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"))
-(mh-defface mh-show-signature (mh-face-data 'mh-show-signature)
+(defface-mh mh-show-signature (mh-face-data 'mh-show-signature)
"Signature face."
:group 'mh-faces
:group 'mh-show
:package-version '(MH-E . "8.0"))
-(mh-defface mh-show-subject
+(defface-mh 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"))
-(mh-defface mh-show-to (mh-face-data 'mh-show-to)
+(defface-mh 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"))
-(mh-defface mh-show-xface
+(defface-mh 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."
:group 'mh-show
:package-version '(MH-E . "8.0"))
-(mh-defface mh-speedbar-folder (mh-face-data 'mh-speedbar-folder)
+(defface-mh mh-speedbar-folder (mh-face-data 'mh-speedbar-folder)
"Basic folder face."
:group 'mh-faces
:group 'mh-speedbar
:package-version '(MH-E . "8.0"))
-(mh-defface mh-speedbar-folder-with-unseen-messages
+(defface-mh 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."
:group 'mh-speedbar
:package-version '(MH-E . "8.0"))
-(mh-defface mh-speedbar-selected-folder
+(defface-mh 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"))
-(mh-defface mh-speedbar-selected-folder-with-unseen-messages
+(defface-mh 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."
:package-version '(MH-E . "8.0"))
;; Get rid of temporary functions and data structures.
-(fmakunbound 'mh-defcustom)
-(fmakunbound 'mh-defface)
-(fmakunbound 'mh-defgroup)
+(fmakunbound 'defcustom-mh)
+(fmakunbound 'defface-mh)
+(fmakunbound 'defgroup-mh)
(fmakunbound 'mh-face-data)
(fmakunbound 'mh-strip-package-version)
(makunbound 'mh-face-data)