• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.10/emacs-93/emacs/lisp/mh-e/

Lines Matching +defs:mh +defs:find +defs:path

0 ;;; mh-e.el --- GNU Emacs interface to the MH mail system
39 ;; http://rand-mh.sourceforge.net/.
46 ;; M-x mh-rmail to read mail. Type C-h m there for a list of commands.
47 ;; C-u M-x mh-rmail to visit any folder.
48 ;; M-x mh-smail to send mail. From within the mail reader, "s" works, too.
51 ;; (global-set-key "\C-cr" 'mh-rmail)
52 ;; (global-set-key "\C-xm" 'mh-smail)
53 ;; (global-set-key "\C-x4m" 'mh-smail-other-window)
55 ;; If Emacs can't find mh-rmail or mh-smail, add the following to ~/.emacs:
56 ;; (require 'mh-autoloads)
59 ;; (require 'mh-cus-load)
62 ;; mh-e-users@lists.sourceforge.net
63 ;; mh-e-announce@lists.sourceforge.net
64 ;; mh-e-devel@lists.sourceforge.net
72 ;; Include the output of M-x mh-version in the bug report unless
88 ;; SourceForge Crew <http://mh-e.sourceforge.net/>, 2001.
92 ;; Provide functions to the rest of MH-E. However, mh-e.el must not
93 ;; use any definitions in files that require mh-e from mh-loaddefs,
95 (require 'mh-loaddefs)
97 (mh-require-cl)
99 (require 'mh-buffers)
100 (require 'mh-compat)
103 (defvar mh-xemacs-flag (featurep 'xemacs)
106 (mh-do-in-xemacs
107 (require 'mh-xemacs))
109 (mh-font-lock-add-keywords
114 "\\(def\\(un\\|macro\\)-mh\\)\\|"
116 "\\(def\\(custom\\|face\\)-mh\\)\\|"
118 "\\(defgroup-mh\\)"
137 (defconst mh-version "8.0.3" "Version number of MH-E.")
141 (defvar mh-sys-path
143 "/usr/local/bin/mh/"
144 "/usr/local/mh/"
145 "/usr/bin/mh/" ; Ultrix 4.2, Linux
146 "/usr/new/mh/" ; Ultrix < 4.2
147 "/usr/contrib/mh/bin/" ; BSDI
150 "/usr/local/bin/mu-mh/" ; GNU mailutils - default
151 "/usr/bin/mu-mh/") ; GNU mailutils - packaged
153 The list `exec-path' is searched in addition to this list.
155 directories to the customizable variable `mh-path'.")
157 (defvar mh-variants nil
160 Use the function `mh-variants' instead.")
162 (defvar mh-variant-in-use nil
164 This differs from `mh-variant' when the latter is set to
167 (defvar mh-progs nil
171 (put 'mh-progs 'risky-local-variable t)
173 (defvar mh-lib nil
178 (put 'mh-lib 'risky-local-variable t)
180 (defvar mh-lib-progs nil
185 (put 'mh-lib-progs 'risky-local-variable t)
189 (defvar mh-draft-folder nil
194 (defvar mh-inbox nil
199 (defvar mh-user-path nil
205 (defvar mh-folder-mode-map (make-keymap)
208 (defvar mh-folder-seq-tool-bar-map nil
211 (defvar mh-folder-tool-bar-map nil
214 (defvar mh-inc-spool-map (make-sparse-keymap)
215 "Keymap for MH-E's mh-inc-spool commands.")
217 (defvar mh-letter-mode-map (copy-keymap text-mode-map)
220 (defvar mh-letter-tool-bar-map nil
223 (defvar mh-search-mode-map (make-sparse-keymap)
226 (defvar mh-show-mode-map (make-sparse-keymap)
229 (defvar mh-show-seq-tool-bar-map nil
232 (defvar mh-show-tool-bar-map nil
237 (defvar mh-arrow-marker nil
240 (defvar mh-colors-available-flag nil
243 (defvar mh-current-folder nil
246 (defvar mh-delete-list nil
249 `mh-before-commands-processed-hook'.")
251 (defvar mh-folder-view-stack nil
254 (defvar mh-index-data nil
257 (defvar mh-index-previous-search nil)
259 (defvar mh-index-msg-checksum-map nil)
261 (defvar mh-index-checksum-origin-map nil)
263 (defvar mh-index-sequence-search-flag nil)
265 (defvar mh-mode-line-annotation nil
268 (defvar mh-next-direction 'forward
271 (defvar mh-previous-window-config nil
274 (defvar mh-refile-list nil
275 "List of folder names in `mh-seq-list'.
277 `mh-before-commands-processed-hook'.")
279 (defvar mh-seen-list nil
282 (defvar mh-seq-list nil
286 (defvar mh-sequence-notation-history nil
287 "Remember original notation that is overwritten by `mh-note-seq'.")
289 (defvar mh-show-buffer nil
292 (defvar mh-showing-mode nil
295 (defvar mh-view-ops nil
301 (defvar mh-globals-hash (make-hash-table)
304 (defvar mh-show-folder-buffer nil
309 (defvar mh-folders-changed nil
312 `mh-current-folder'. This variable can be used by
313 `mh-after-commands-processed-hook'.")
315 (defvar mh-mail-header-separator "--------"
321 `mh-mail-header-separator' in `mh-letter-mode'; in other
328 (defvar mh-sent-from-folder nil
331 (defvar mh-sent-from-msg nil
336 (defvar mh-unseen-seq nil
340 (defvar mh-previous-seq nil
346 (defvar mh-flists-present-flag nil
349 (defvar mh-index-data-file ".mhe_index"
352 (defvar mh-letter-header-field-regexp "^\\([A-Za-z][A-Za-z0-9-]*\\):")
354 (defvar mh-page-to-next-msg-flag nil
357 (defvar mh-pgp-support-flag (not (not (locate-library "mml2015")))
360 (defvar mh-signature-separator "-- \n"
366 of the signature in a reply. Use `mh-signature-separator-regexp'
369 (defvar mh-signature-separator-regexp "^-- $"
371 See `mh-signature-separator'.")
373 (defvar mh-thread-scan-line-map nil
375 (make-variable-buffer-local 'mh-thread-scan-line-map)
377 (defvar mh-thread-scan-line-map-stack nil
381 (make-variable-buffer-local 'mh-thread-scan-line-map-stack)
383 (defvar mh-x-mailer-string nil
395 (defmacro mh-macro-expansion-time-gnus-version ()
401 (defun mh-run-time-gnus-version ()
407 (defun mh-version ()
410 (set-buffer (get-buffer-create mh-info-buffer))
413 (insert "MH-E " mh-version "\n\n")
416 (let* ((compiled-mhe (byte-code-function-p (symbol-function 'mh-version)))
418 (mh-macro-expansion-time-gnus-version)
422 " Gnus (run-time):\t" (mh-run-time-gnus-version) "\n\n"))
426 (if mh-variant-in-use
427 (insert mh-variant-in-use "\n"
428 " mh-progs:\t" mh-progs "\n"
429 " mh-lib:\t" mh-lib "\n"
430 " mh-lib-progs:\t" mh-lib-progs "\n\n")
437 (display-buffer mh-info-buffer))
444 (defun mh-list-to-string (l)
446 (nreverse (mh-list-to-string-1 l)))
448 (defun mh-list-to-string-1 (l)
461 (setq new-list (nconc (mh-list-to-string-1 element) new-list)))
471 (defvar mh-index-max-cmdline-args 500
474 (defun mh-xargs (cmd &rest args)
478 `mh-index-max-cmdline-args' strings to it. This is repeated till
488 (while (and (not (eobp)) (< count mh-index-max-cmdline-args))
490 (mh-line-end-position))
500 (defun mh-quote-for-shell (string)
509 (defun mh-exec-cmd (command &rest args)
510 "Execute mh-command COMMAND with ARGS.
515 (set-buffer (get-buffer-create mh-log-buffer))
516 (let* ((initial-size (mh-truncate-log-buffer))
518 (args (mh-list-to-string args)))
519 (apply 'call-process (expand-file-name command mh-progs) nil t nil args)
527 (switch-to-buffer-other-window mh-log-buffer)
530 (defun mh-exec-cmd-error (env command &rest args)
531 "In environment ENV, execute mh-command COMMAND with ARGS.
535 (set-buffer (get-buffer-create mh-temp-buffer))
543 (mh-handle-process-error
544 command (apply #'call-process (expand-file-name command mh-progs)
545 nil t nil (mh-list-to-string args))))))
547 (defun mh-exec-cmd-daemon (command filter &rest args)
551 otherwise the default filter `mh-process-daemon' is used. See
556 (set-buffer (get-buffer-create mh-log-buffer))
557 (mh-truncate-log-buffer))
561 (expand-file-name command mh-progs)
562 (mh-list-to-string args))))
563 (set-process-filter process (or filter 'mh-process-daemon))
566 (defun mh-exec-cmd-env-daemon (env command filter &rest args)
567 "In ennvironment ENV, execute mh-command COMMAND in the background.
573 otherwise the default filter `mh-process-daemon' is used. See
580 (apply #'mh-exec-cmd-daemon command filter args)))
582 (defun mh-process-daemon (process output)
586 (with-current-buffer (get-buffer-create mh-log-buffer)
588 (display-buffer mh-log-buffer)))
590 (defun mh-exec-cmd-quiet (raise-error command &rest args)
593 Return at start of mh-temp buffer, where output can be parsed and
598 (set-buffer (get-buffer-create mh-temp-buffer))
602 (expand-file-name command mh-progs) nil t nil
606 (mh-handle-process-error command value)
609 (defun mh-exec-cmd-output (command display &rest args)
616 (expand-file-name command mh-progs) nil t display
617 (mh-list-to-string args))
624 (mh-exchange-point-and-mark-preserving-active-mark))
629 (defun mh-exchange-point-and-mark-preserving-active-mark ()
644 (defun mh-exec-lib-cmd-output (command &rest args)
648 (apply 'mh-exec-cmd-output (expand-file-name command mh-lib-progs) nil args))
650 (defun mh-handle-process-error (command status)
660 (set-buffer (get-buffer-create mh-log-buffer))
661 (mh-truncate-log-buffer)
664 command mh-log-buffer)))
676 (defmacro mh-strip-package-version (args)
689 (defmacro defgroup-mh (symbol members doc &rest args)
696 `(defgroup ,symbol ,members ,doc ,@(mh-strip-package-version args)))
697 (put 'defgroup-mh 'lisp-indent-function 'defun)
699 (defmacro defcustom-mh (symbol value doc &rest args)
706 `(defcustom ,symbol ,value ,doc ,@(mh-strip-package-version args)))
707 (put 'defcustom-mh 'lisp-indent-function 'defun)
709 (defmacro defface-mh (face spec doc &rest args)
716 `(defface ,face ,spec ,doc ,@(mh-strip-package-version args)))
717 (put 'defface-mh 'lisp-indent-function 'defun)
724 (defcustom-mh mh-path nil
726 See `mh-variant'."
727 :group 'mh-e
731 (defun mh-variants ()
733 This function looks for MH in `mh-sys-path', `mh-path' and
734 `exec-path'. The format of the list of variants that is returned
735 is described by the variable `mh-variants'."
736 (if mh-variants
737 mh-variants
741 (loop for dir in (append mh-path mh-sys-path exec-path) do
746 (let ((variant (mh-variant-info dir)))
748 (add-to-list 'mh-variants variant)))))
749 mh-variants)))
751 (defun mh-variant-info (dir)
754 (let ((tmp-buffer (get-buffer-create mh-temp-buffer)))
757 ((mh-variant-mh-info dir))
758 ((mh-variant-nmh-info dir))
759 ((mh-variant-mu-mh-info dir))))))
761 (defun mh-variant-mh-info (dir)
774 (when (mh-file-command-p mhparam)
786 (variant mh)
787 (mh-lib-progs ,libdir)
788 (mh-lib ,libdir)
789 (mh-progs ,dir)
792 (defun mh-variant-mu-mh-info (dir)
798 (when (mh-file-command-p mhparam)
805 (mh-progs dir))
807 (variant mu-mh)
808 (mh-lib-progs ,(mh-profile-component "libdir"))
809 (mh-lib ,(mh-profile-component "etcdir"))
810 (mh-progs ,dir)
814 (defun mh-variant-nmh-info (dir)
819 (when (mh-file-command-p mhparam)
825 (mh-progs dir))
828 (mh-lib-progs ,(mh-profile-component "libdir"))
829 (mh-lib ,(mh-profile-component "etcdir"))
830 (mh-progs ,dir)
834 (defun mh-file-command-p (file)
838 (defun mh-variant-set-variant (variant)
841 function `mh-variants'.
846 (when (assoc variant (mh-variants))
847 (let* ((alist (cdr (assoc variant (mh-variants))))
848 (lib-progs (cadr (assoc 'mh-lib-progs alist)))
849 (lib (cadr (assoc 'mh-lib alist)))
850 (progs (cadr (assoc 'mh-progs alist)))
852 ;;(set-default mh-variant variant)
853 (setq mh-x-mailer-string nil
854 mh-flists-present-flag flists
855 mh-lib-progs lib-progs
856 mh-lib lib
857 mh-progs progs
858 mh-variant-in-use variant))))
860 (loop for variant-list in (mh-variants)
864 (lib-progs (cadr (assoc 'mh-lib-progs alist)))
865 (lib (cadr (assoc 'mh-lib alist)))
866 (progs (cadr (assoc 'mh-progs alist)))
868 ;;(set-default mh-variant flavor)
869 (setq mh-x-mailer-string nil
870 mh-flists-present-flag flists
871 mh-lib-progs lib-progs
872 mh-lib lib
873 mh-progs progs
874 mh-variant-in-use version)
877 (defun mh-variant-p (&rest variants)
879 Currently known variants are 'MH, 'nmh, and 'mu-mh."
881 (cadr (assoc 'variant (assoc mh-variant-in-use (mh-variants))))))
884 (defun mh-profile-component (component)
889 (mh-exec-cmd-quiet nil "mhparam" "-component" component)
890 (mh-profile-component-value component)))
892 (defun mh-profile-component-value (component)
905 (defun mh-variant-set (variant)
907 Sets `mh-progs', `mh-lib', `mh-lib-progs' and
908 `mh-flists-present-flag'.
914 (mapcar (lambda (x) (list (car x))) (mh-variants))
916 (let ((valid-list (mapcar (lambda (x) (car x)) (mh-variants))))
921 ((mh-variant-set-variant 'nmh)
922 (message "%s installed as MH variant" mh-variant-in-use))
923 ((mh-variant-set-variant 'mh)
924 (message "%s installed as MH variant" mh-variant-in-use))
925 ((mh-variant-set-variant 'mu-mh)
926 (message "%s installed as MH variant" mh-variant-in-use))
930 (when (not (mh-variant-set-variant variant))
932 (mh-variant-set 'autodetect)))
936 (mh-variants) " or "))))))
938 (defcustom-mh mh-variant 'autodetect
944 `mh-path' (which you can customize), `mh-sys-path', and
945 `exec-path'. If MH-E can't find MH at all, you may have to
946 customize `mh-path' and add the directory in which the command
948 and mailutils installed (for example) and `mh-variant-in-use' was
952 When this variable is changed, MH-E resets `mh-progs', `mh-lib',
953 `mh-lib-progs', `mh-flists-present-flag', and `mh-variant-in-use'
959 ,@(mapcar (lambda (x) `(const ,(car x))) (mh-variants)))
961 (set-default symbol value) ;Done in mh-variant-set-variant!
962 (mh-variant-set value))
963 :group 'mh-e
982 ;; the groups mh-faces and mh-hooks which are last .
993 ;; All hooks must be placed in the mh-hook group; in addition, add
995 ;; described. Since the mh-hook group appears near the end of this
1000 ;; All faces must be placed in the mh-faces group; in addition, add
1002 ;; described. Since the mh-faces group appears near the end of this
1005 (defun mh-customize (&optional delete-other-windows-flag)
1010 (customize-group 'mh-e)
1025 (defgroup-mh mh-e nil
1029 :link '(custom-manual "(mh-e)Top")
1033 (defgroup-mh mh-alias nil
1035 :link '(custom-manual "(mh-e)Aliases")
1036 :prefix "mh-alias-"
1037 :group 'mh-e
1040 (defgroup-mh mh-folder nil
1042 :prefix "mh-"
1043 :link '(custom-manual "(mh-e)Folders")
1044 :group 'mh-e
1047 (defgroup-mh mh-folder-selection nil
1049 :prefix "mh-"
1050 :link '(custom-manual "(mh-e)Folder Selection")
1051 :group 'mh-e
1054 (defgroup-mh mh-identity nil
1056 :link '(custom-manual "(mh-e)Identities")
1057 :prefix "mh-identity-"
1058 :group 'mh-e
1061 (defgroup-mh mh-inc nil
1063 :prefix "mh-inc-"
1064 :link '(custom-manual "(mh-e)Incorporating Mail")
1065 :group 'mh-e
1068 (defgroup-mh mh-junk nil
1070 :link '(custom-manual "(mh-e)Junk")
1071 :prefix "mh-junk-"
1072 :group 'mh-e
1075 (defgroup-mh mh-letter nil
1077 :prefix "mh-"
1078 :link '(custom-manual "(mh-e)Editing Drafts")
1079 :group 'mh-e
1082 (defgroup-mh mh-ranges nil
1084 :prefix "mh-"
1085 :link '(custom-manual "(mh-e)Ranges")
1086 :group 'mh-e
1089 (defgroup-mh mh-scan-line-formats nil
1091 :link '(custom-manual "(mh-e)Scan Line Formats")
1092 :prefix "mh-"
1093 :group 'mh-e
1096 (defgroup-mh mh-search nil
1098 :link '(custom-manual "(mh-e)Searching")
1099 :prefix "mh-search-"
1100 :group 'mh-e
1103 (defgroup-mh mh-sending-mail nil
1105 :prefix "mh-"
1106 :link '(custom-manual "(mh-e)Sending Mail")
1107 :group 'mh-e
1110 (defgroup-mh mh-sequences nil
1112 :prefix "mh-"
1113 :link '(custom-manual "(mh-e)Sequences")
1114 :group 'mh-e
1117 (defgroup-mh mh-show nil
1119 :prefix "mh-"
1120 :link '(custom-manual "(mh-e)Reading Mail")
1121 :group 'mh-e
1124 (defgroup-mh mh-speedbar nil
1126 :prefix "mh-speed-"
1127 :link '(custom-manual "(mh-e)Speedbar")
1128 :group 'mh-e
1131 (defgroup-mh mh-thread nil
1133 :prefix "mh-thread-"
1134 :link '(custom-manual "(mh-e)Threading")
1135 :group 'mh-e
1138 (defgroup-mh mh-tool-bar nil
1140 :link '(custom-manual "(mh-e)Tool Bar")
1141 :prefix "mh-"
1142 :group 'mh-e
1145 (defgroup-mh mh-hooks nil
1147 :link '(custom-manual "(mh-e)Top")
1148 :prefix "mh-"
1149 :group 'mh-e
1152 (defgroup-mh mh-faces nil
1154 :link '(custom-manual "(mh-e)Top")
1155 :prefix "mh-"
1157 :group 'mh-e
1165 ;; See Variant Support, above, for mh-e group.
1167 ;;; Aliases (:group 'mh-alias)
1169 (defcustom-mh mh-alias-completion-ignore-case-flag t
1177 :group 'mh-alias
1180 (defcustom-mh mh-alias-expand-aliases-flag nil
1187 :group 'mh-alias
1190 (defcustom-mh mh-alias-flash-on-comma t
1200 :group 'mh-alias
1203 (defcustom-mh mh-alias-insert-file nil
1214 :group 'mh-alias
1217 (defcustom-mh mh-alias-insertion-location 'sorted
1226 :group 'mh-alias
1229 (defcustom-mh mh-alias-local-users t
1247 :group 'mh-alias
1250 (defcustom-mh mh-alias-local-users-prefix "local."
1265 This option has no effect if variable `mh-alias-local-users' is
1269 :group 'mh-alias
1272 (defcustom-mh mh-alias-passwd-gecos-comma-separator-flag t
1275 In the example in `mh-alias-local-users-prefix', commas are used
1281 :group 'mh-alias
1284 ;;; Organizing Your Mail with Folders (:group 'mh-folder)
1286 (defcustom-mh mh-new-messages-folders t
1294 See also `mh-recursive-folders-flag'."
1298 :group 'mh-folder
1301 (defcustom-mh mh-ticked-messages-folders t
1302 "Folders searched for `mh-tick-seq'.
1309 See also `mh-recursive-folders-flag'."
1313 :group 'mh-folder
1316 (defcustom-mh mh-large-folder 200
1321 visited. Even when `mh-show-threads-flag' is non-nil, the folder
1325 :group 'mh-folder
1328 (defcustom-mh mh-recenter-summary-flag nil
1334 :group 'mh-folder
1337 (defcustom-mh mh-recursive-folders-flag nil
1340 :group 'mh-folder
1343 (defcustom-mh mh-sortm-args nil
1344 "*Additional arguments for \"sortm\"\\<mh-folder-mode-map>.
1347 \\[mh-sort-folder]. Normally default arguments to \"sortm\" are
1352 :group 'mh-folder
1355 ;;; Folder Selection (:group 'mh-folder-selection)
1357 (defcustom-mh mh-default-folder-for-message-function nil
1366 :group 'mh-folder-selection
1369 (defcustom-mh mh-default-folder-list nil
1373 list is used as the default for `mh-refile-msg' and similar
1379 See `mh-prompt-for-refile-folder' and `mh-folder-from-address'
1384 :group 'mh-folder-selection
1387 (defcustom-mh mh-default-folder-must-exist-flag t
1395 See `mh-prompt-for-refile-folder' and `mh-folder-from-address'
1398 :group 'mh-folder-selection
1401 (defcustom-mh mh-default-folder-prefix ""
1405 See `mh-prompt-for-refile-folder' and `mh-folder-from-address'
1408 :group 'mh-folder-selection
1411 ;;; Identities (:group 'mh-identity)
1414 (unless (fboundp 'mh-identity-make-menu-no-autoload)
1415 (defun mh-identity-make-menu-no-autoload ()
1417 Real definition will take effect when mh-identity is loaded."
1420 (defcustom-mh mh-identity-list nil
1438 `mh-extract-from-attribution-verb'. Set your signature with the
1440 `mh-signature-file-name', a file, or a function. Specify a different
1445 \\[mh-insert-identity]. To clear the fields and signature added by the
1452 the option `mh-identity-default' to the current identity setting. You
1453 can also customize the `mh-identity-default' option in the usual
1475 (const :tag "mh-signature-file-name"
1485 (mh-identity-make-menu-no-autoload))
1486 :group 'mh-identity
1489 (defcustom-mh mh-auto-fields-list nil
1499 configured in `mh-identity-list'. All of the information for that
1516 \\[mh-insert-auto-fields] command or choose the \"Identity -> Insert
1521 by turning off the option `mh-auto-fields-prompt-flag'.
1523 You should avoid using the same header field in `mh-auto-fields-list'
1524 and `mh-identity-list' definitions that may apply to the same message
1537 (mapcar 'car mh-identity-list))))
1547 :group 'mh-identity
1550 (defcustom-mh mh-auto-fields-prompt-flag t
1552 See `mh-auto-fields-list'."
1554 :group 'mh-identity
1557 (defcustom-mh mh-identity-default nil
1558 "Default identity to use when `mh-letter-mode' is called.
1559 See `mh-identity-list'."
1564 (mapcar 'car mh-identity-list))))
1565 :group 'mh-identity
1568 (defcustom-mh mh-identity-handlers
1569 '(("From" . mh-identity-handler-top)
1570 (":default" . mh-identity-handler-bottom)
1571 (":attribution-verb" . mh-identity-handler-attribution-verb)
1572 (":signature" . mh-identity-handler-signature)
1573 (":pgg-default-user-id" . mh-identity-handler-gpg-identity))
1574 "Handler functions for fields in `mh-identity-list'.
1577 and attributions in `mh-identity-list' are added. To customize
1578 `mh-identity-handlers', replace the name of an existing handler
1585 `mh-identity-list'. The special fields \":attribution-verb\",
1587 `mh-identity-list' choices \"Attribution Verb\", \"Signature\", and
1599 :group 'mh-identity
1602 ;;; Incorporating Your Mail (:group 'mh-inc)
1604 (defcustom-mh mh-inc-prog "inc"
1609 to be in the `mh-progs' directory. You may also link a file to
1613 :group 'mh-inc
1617 (unless (fboundp 'mh-inc-spool-make-no-autoload)
1618 (defun mh-inc-spool-make-no-autoload ()
1620 Real definition will take effect when mh-inc is loaded."
1623 (defcustom-mh mh-inc-spool-list nil
1626 You can use the `mh-inc-spool-list' variable to direct MH-E to
1631 Suppose you are subscribed to the \"mh-e-devel\" mailing list and
1632 you use \"procmail\" to filter this mail into \"~/mail/mh-e\" with
1637 * ^From mh-e-devel-admin@stop.mail-abuse.org
1638 mh-e
1640 In order to incorporate \"~/mail/mh-e\" into \"+mh-e\" with an
1641 \"I m\" (mh-inc-spool-mh-e) command, customize this option, and click
1642 on the \"INS\" button. Enter a \"Spool File\" of \"~/mail/mh-e\", a
1643 \"Folder\" of \"mh-e\", and a \"Key Binding\" of \"m\".
1648 box ~/mail/mh-e
1649 title mh-e
1653 command emacsclient --eval '(mh-inc-spool-mh-e)'
1662 (mh-inc-spool-make-no-autoload))
1663 :group 'mh-inc
1666 ;;; Dealing with Junk Mail (:group 'mh-junk)
1668 (defvar mh-junk-choice nil
1672 (defvar mh-junk-function-alist
1673 '((spamassassin mh-spamassassin-blacklist mh-spamassassin-whitelist)
1674 (bogofilter mh-bogofilter-blacklist mh-bogofilter-whitelist)
1675 (spamprobe mh-spamprobe-blacklist mh-spamprobe-whitelist))
1682 (defun mh-junk-choose (symbol value)
1686 `mh-junk-program' and VALUE bound to the new value of
1687 `mh-junk-program'. The function sets the variable
1688 `mh-junk-choice' in addition to `mh-junk-program'."
1690 (setq mh-junk-choice
1692 (loop for element in mh-junk-function-alist
1693 until (executable-find (symbol-name (car element)))
1696 (defcustom-mh mh-junk-background nil
1711 :group 'mh-junk
1714 (defcustom-mh mh-junk-disposition nil
1718 :group 'mh-junk
1721 (defcustom-mh mh-junk-program nil
1733 :set 'mh-junk-choose
1734 :group 'mh-junk
1737 ;;; Editing a Draft (:group 'mh-letter)
1739 (defcustom-mh mh-compose-insertion (if (locate-library "mml") 'mml 'mh)
1749 (const :tag "MH" mh))
1750 :group 'mh-letter
1753 (defcustom-mh mh-compose-skipped-header-fields
1758 :group 'mh-letter
1761 (defcustom-mh mh-compose-space-does-completion-flag nil
1762 "*Non-nil means \\<mh-letter-mode-map>\\[mh-letter-complete-or-space] does completion in message header."
1764 :group 'mh-letter
1767 (defcustom-mh mh-delete-yanked-msg-window-flag nil
1771 yanking it with \\<mh-letter-mode-map>\\[mh-yank-cur-msg] to make
1774 :group 'mh-letter
1777 (defcustom-mh mh-extract-from-attribution-verb "wrote:"
1778 "*Verb to use for attribution when a message is yanked by \\<mh-letter-mode-map>\\[mh-yank-cur-msg].
1788 :group 'mh-letter
1791 (defcustom-mh mh-ins-buf-prefix "> "
1801 flavors of `mh-yank-behavior' or you have added a
1804 :group 'mh-letter
1807 (defcustom-mh mh-letter-complete-function 'ispell-complete-word
1811 \\<mh-letter-mode-map>\\[mh-letter-complete] runs this function,
1814 :group 'mh-letter
1817 (defcustom-mh mh-letter-fill-column 72
1823 :group 'mh-letter
1826 (defcustom-mh mh-mml-method-default (if mh-pgp-support-flag "pgpmime" "none")
1846 :group 'mh-letter
1849 (defcustom-mh mh-signature-file-name "~/.signature"
1859 instead you may want to insert one yourself. Options that you may find
1860 useful to do this include `mh-signature-separator' (when inserting a
1861 signature separator) and `mh-signature-separator-regexp' (for finding
1862 said separator). The function `mh-signature-separator-p', which
1866 \\<mh-letter-mode-map>\\[mh-insert-signature] or with the option
1867 `mh-identity-list'."
1869 :group 'mh-letter
1872 (defcustom-mh mh-signature-separator-flag t
1880 :group 'mh-letter
1883 (defcustom-mh mh-x-face-file "~/.face"
1906 `mh-x-face-file' to nil, or simply ensure that the file defined by
1909 :group 'mh-letter
1912 (defcustom-mh mh-yank-behavior 'attribution
1913 "*Controls which part of a message is yanked by \\<mh-letter-mode-map>\\[mh-yank-cur-msg].
1926 `mh-extract-from-attribution-verb'. This is the default.
1933 \\[mh-yank-cur-msg] at all. Note that this automatic action is
1936 the option `mh-delete-yanked-msg-window-flag' as well so that the
1939 If the show buffer has a region, the option `mh-yank-behavior' is
1944 `mail-citation-hook' is ignored and `mh-ins-buf-prefix' is not
1954 :group 'mh-letter
1957 ;;; Ranges (:group 'mh-ranges)
1959 (defcustom-mh mh-interpret-number-as-range-flag t
1967 :group 'mh-ranges
1970 ;;; Scan Line Formats (:group 'mh-scan-line-formats)
1973 (unless (fboundp 'mh-adaptive-cmd-note-flag-check)
1974 (defun mh-adaptive-cmd-note-flag-check (symbol value)
1979 (defcustom-mh mh-adaptive-cmd-note-flag t
1986 `mh-scan-format-file' is set to \"Use MH-E scan Format\".
1989 call `mh-set-cmd-note' with the width specified by your format file
1990 \(see `mh-scan-format-file'). For example, the default width is 4, so
1991 you would use \"(mh-set-cmd-note 4)\"."
1993 :group 'mh-scan-line-formats
1994 :set 'mh-adaptive-cmd-note-flag-check
1997 (defun mh-scan-format-file-check (symbol value)
1999 Throw an error if user tries to set `mh-scan-format-file' to
2000 anything but t when `mh-adaptive-cmd-note-flag' is on. Otherwise,
2003 mh-adaptive-cmd-note-flag)
2004 (error "%s %s" "You must turn off `mh-adaptive-cmd-note-flag'"
2008 (defcustom-mh mh-scan-format-file t
2013 `mh-scan-format-mh' or `mh-scan-format-nmh' depending on whether MH or
2015 turn on the `mh-adaptive-cmd-note-flag' option.
2025 are involved to do that. Use \"\\[apropos] RET mh-scan.*regexp\" to
2027 `mh-set-cmd-note' if your notations are not in column 4 (columns in
2032 :group 'mh-scan-line-formats
2033 :set 'mh-scan-format-file-check
2036 (defun mh-adaptive-cmd-note-flag-check (symbol value)
2039 `mh-adaptive-cmd-note-flag' when `mh-scan-format-file' isn't t.
2042 (not (eq mh-scan-format-file t)))
2043 (error "%s %s" "Can't turn on unless `mh-scan-format-file'"
2047 (defcustom-mh mh-scan-prog "scan"
2052 absolute pathname, it is assumed to be in the `mh-progs'
2054 \"mh-profile(5)\") to produce a different type of listing."
2056 :group 'mh-scan-line-formats
2058 (make-variable-buffer-local 'mh-scan-prog)
2060 ;;; Searching (:group 'mh-search)
2062 (defcustom-mh mh-search-program nil
2072 MH-E can be found in the documentation of `mh-search'."
2080 :group 'mh-search
2083 ;;; Sending Mail (:group 'mh-sending-mail)
2085 (defcustom-mh mh-compose-forward-as-mime-flag t
2098 :group 'mh-sending-mail
2101 (defcustom-mh mh-compose-letter-function nil
2110 :group 'mh-sending-mail
2113 (defcustom-mh mh-compose-prompt-flag nil
2116 :group 'mh-sending-mail
2119 (defcustom-mh mh-forward-subject-format "%s: %s"
2126 :group 'mh-sending-mail
2129 (defcustom-mh mh-insert-x-mailer-flag t
2136 :group 'mh-sending-mail
2139 (defcustom-mh mh-redist-full-contents-flag nil
2145 find that MH will not allow you to redistribute a message that
2148 :group 'mh-sending-mail
2151 (defcustom-mh mh-reply-default-reply-to nil
2155 prompted for the recipient of a reply. If you find that most of
2164 :group 'mh-sending-mail
2167 (defcustom-mh mh-reply-show-message-flag t
2173 See also `mh-reply'."
2175 :group 'mh-sending-mail
2178 ;;; Sequences (:group 'mh-sequences)
2180 ;; If `mh-unpropagated-sequences' becomes a defcustom, add the following to
2182 ;; specified by setting `mh-unpropagated-sequences' appropriately." XXX
2184 (defcustom-mh mh-refile-preserves-sequences-flag t
2192 :group 'mh-sequences
2195 (defcustom-mh mh-tick-seq 'tick
2204 :group 'mh-sequences
2207 (defcustom-mh mh-update-sequences-after-mh-show-flag t
2208 "*Non-nil means flush MH sequences to disk after message is shown\\<mh-folder-mode-map>.
2213 and the sequence listed by the option `mh-tick-seq' which is
2216 \\[mh-execute-commands], \\[mh-quit], or \\[mh-update-sequences]
2219 :group 'mh-sequences
2222 ;;; Reading Your Mail (:group 'mh-show)
2224 (defcustom-mh mh-bury-show-buffer-flag t
2232 :group 'mh-show
2235 (defcustom-mh mh-clean-message-header-flag t
2238 See also `mh-invisible-header-fields-default' and
2239 `mh-invisible-header-fields'."
2241 :group 'mh-show
2244 (defcustom-mh mh-decode-mime-flag (not (not (locate-library "mm-decode")))
2245 "*Non-nil means attachments are handled\\<mh-folder-mode-map>.
2253 \\[mh-toggle-mh-decode-mime-flag] to view the raw message.
2257 `mh-graphical-smileys-flag' and `mh-graphical-emphasis-flag'."
2259 :group 'mh-show
2262 (defcustom-mh mh-display-buttons-for-alternatives-flag nil
2271 :group 'mh-show
2274 (defcustom-mh mh-display-buttons-for-inline-parts-flag nil
2275 "*Non-nil means display buttons for all inline attachments\\<mh-folder-mode-map>.
2287 can use the command \\[mh-toggle-mime-buttons] to toggle the
2294 :group 'mh-show
2297 (defcustom-mh mh-do-not-confirm-flag nil
2300 Commands such as `mh-pack-folder' prompt to confirm whether to
2306 :group 'mh-show
2309 (defcustom-mh mh-fetch-x-image-url nil
2335 field too. See Info node `(mh-e)Picture'.
2337 This setting only has effect if the option `mh-show-use-xface-flag' is
2342 :group 'mh-show
2345 (defcustom-mh mh-graphical-smileys-flag t
2354 This option is disabled if the option `mh-decode-mime-flag' is
2357 :group 'mh-show
2360 (defcustom-mh mh-graphical-emphasis-flag t
2371 This option is disabled if the option `mh-decode-mime-flag' is
2374 :group 'mh-show
2377 (defcustom-mh mh-highlight-citation-style 'gnus
2390 :group 'mh-show
2394 (defvar mh-invisible-header-fields-internal
2589 `mh-invisible-header-fields-default' and add entries to hide in
2590 `mh-invisible-header-fields'.")
2593 (unless (fboundp 'mh-invisible-headers)
2594 (defun mh-invisible-headers ()
2599 (defvar mh-delay-invisible-header-generation-flag t
2601 Because the function `mh-invisible-headers' uses both
2602 `mh-invisible-header-fields' and `mh-invisible-header-fields', it
2605 (defcustom-mh mh-invisible-header-fields nil
2609 `mh-invisible-header-fields-default' can be added to this option
2617 See also `mh-clean-message-header-flag'."
2622 (mh-invisible-headers))
2623 :group 'mh-show
2626 (defcustom-mh mh-invisible-header-fields-default nil
2633 be added to the option `mh-invisible-header-fields'.
2635 See also `mh-clean-message-header-flag'."
2637 mh-invisible-header-fields-internal))
2640 (mh-invisible-headers))
2641 :group 'mh-show
2644 (defvar mh-invisible-header-fields-compiled nil
2647 `mh-invisible-header-fields-default' checking for fields normally
2649 `mh-invisible-header-fields'.")
2651 (defun mh-invisible-headers ()
2652 "Make or remake the variable `mh-invisible-header-fields-compiled'.
2653 Done using `mh-invisible-header-fields-internal' as input, from
2654 which entries from `mh-invisible-header-fields-default' are
2655 removed and entries from `mh-invisible-header-fields' are added."
2656 (let ((fields mh-invisible-header-fields-internal))
2657 (when mh-invisible-header-fields-default
2658 ;; Remove entries from `mh-invisible-header-fields-default'
2661 unless (member x mh-invisible-header-fields-default)
2663 (when (and (boundp 'mh-invisible-header-fields)
2664 mh-invisible-header-fields)
2665 (dolist (x mh-invisible-header-fields)
2668 (setq mh-invisible-header-fields-compiled
2674 (setq mh-invisible-header-fields-compiled nil))))
2677 (mh-invisible-headers)
2679 (defcustom-mh mh-lpr-command-format "lpr -J '%s'"
2680 "*Command used to print\\<mh-folder-mode-map>.
2683 actual printing for the \\[mh-print-msg] command. The string can
2690 This options is not used by the commands \\[mh-ps-print-msg] or
2691 \\[mh-ps-print-msg-file]."
2693 :group 'mh-show
2696 (defcustom-mh mh-max-inline-image-height nil
2704 the options `mh-max-inline-image-width' and
2705 `mh-max-inline-image-height' from their default value of zero to
2709 :group 'mh-show
2712 (defcustom-mh mh-max-inline-image-width nil
2720 the options `mh-max-inline-image-width' and
2721 `mh-max-inline-image-height' from their default value of zero to
2725 :group 'mh-show
2728 (defcustom-mh mh-mhl-format-file nil
2749 :group 'mh-show
2752 (defcustom-mh mh-mime-save-parts-default-directory t
2753 "Default directory to use for \\<mh-folder-mode-map>\\[mh-mime-save-parts].
2765 :group 'mh-show
2768 (defcustom-mh mh-print-background-flag nil
2769 "*Non-nil means messages should be printed in the background\\<mh-folder-mode-map>.
2778 This option is not used by the commands \\[mh-ps-print-msg] or
2779 \\[mh-ps-print-msg-file]."
2781 :group 'mh-show
2784 (defcustom-mh mh-show-maximum-size 0
2791 :group 'mh-show
2794 (defcustom-mh mh-show-use-xface-flag (>= emacs-major-version 21)
2804 The option `mh-show-use-xface-flag' is used to turn this feature on
2828 The option `mh-fetch-x-image-url' controls the fetching of the
2831 :group 'mh-show
2834 (defcustom-mh mh-store-default-directory nil
2835 "*Default directory for \\<mh-folder-mode-map>\\[mh-store-msg].
2843 :group 'mh-show
2846 (defcustom-mh mh-summary-height nil
2856 :group 'mh-show
2859 ;;; The Speedbar (:group 'mh-speedbar)
2861 (defcustom-mh mh-speed-update-interval 60
2865 :group 'mh-speedbar
2868 ;;; Threading (:group 'mh-thread)
2870 (defcustom-mh mh-show-threads-flag nil
2876 threaded is less than `mh-large-folder'."
2878 :group 'mh-thread
2881 ;;; The Tool Bar (:group 'mh-tool-bar)
2883 ;; mh-tool-bar-folder-buttons and mh-tool-bar-letter-buttons defined
2884 ;; dynamically in mh-tool-bar.el.
2886 (defcustom-mh mh-tool-bar-search-function 'mh-search
2889 By default, this is set to `mh-search'. You can also choose
2892 :type '(choice (const mh-search)
2894 :group 'mh-tool-bar
2898 (mh-do-in-xemacs
2899 (defcustom-mh mh-xemacs-use-tool-bar-flag mh-xemacs-has-tool-bar-flag
2907 :group 'mh-tool-bar
2910 (not mh-xemacs-has-tool-bar-flag))
2915 (defcustom-mh mh-xemacs-tool-bar-position nil
2930 :group 'mh-tool-bar
2936 ;;; Hooks (:group 'mh-hooks + group where hook described)
2938 (defcustom-mh mh-after-commands-processed-hook nil
2939 "Hook run by \\<mh-folder-mode-map>\\[mh-execute-commands] after performing outstanding refile and delete requests.
2942 `mh-folders-changed', which lists which folders were affected by
2944 folder, which is also available in `mh-current-folder'."
2946 :group 'mh-hooks
2947 :group 'mh-folder
2950 (defcustom-mh mh-alias-reloaded-hook nil
2951 "Hook run by `mh-alias-reload' after loading aliases."
2953 :group 'mh-hooks
2954 :group 'mh-alias
2957 (defcustom-mh mh-before-commands-processed-hook nil
2958 "Hook run by \\<mh-folder-mode-map>\\[mh-execute-commands] before performing outstanding refile and delete requests.
2960 Variables that are useful in this hook include `mh-delete-list'
2961 and `mh-refile-list' which can be used to see which changes will
2962 be made to the current folder, `mh-current-folder'."
2964 :group 'mh-hooks
2965 :group 'mh-folder
2968 (defcustom-mh mh-before-quit-hook nil
2969 "Hook run by \\<mh-folder-mode-map>\\[mh-quit] before quitting MH-E.
2973 abort the quit or call `mh-execute-commands', for example.
2975 See also `mh-quit-hook'."
2977 :group 'mh-hooks
2978 :group 'mh-folder
2981 (defcustom-mh mh-before-send-letter-hook nil
2982 "Hook run at the beginning of the \\<mh-letter-mode-map>\\[mh-send-letter] command.
2988 :group 'mh-hooks
2989 :group 'mh-letter
2992 (defcustom-mh mh-delete-msg-hook nil
2993 "Hook run by \\<mh-letter-mode-map>\\[mh-delete-msg] after marking each message for deletion.
2998 :group 'mh-hooks
2999 :group 'mh-show
3002 (defcustom-mh mh-find-path-hook nil
3003 "Hook run by `mh-find-path' after reading the user's MH profile.
3006 `mh-find-path' sets if you need to run with different values
3009 :group 'mh-hooks
3010 :group 'mh-e
3013 (defcustom-mh mh-folder-mode-hook nil
3014 "Hook run by `mh-folder-mode' when visiting a new folder."
3016 :group 'mh-hooks
3017 :group 'mh-folder
3020 (defcustom-mh mh-forward-hook nil
3021 "Hook run by `mh-forward' on a forwarded letter."
3023 :group 'mh-hooks
3024 :group 'mh-sending-mail
3027 (defcustom-mh mh-inc-folder-hook nil
3028 "Hook run by \\<mh-folder-mode-map>\\[mh-inc-folder] after incorporating mail into a folder."
3030 :group 'mh-hooks
3031 :group 'mh-inc
3034 (defcustom-mh mh-insert-signature-hook nil
3035 "Hook run by \\<mh-letter-mode-map>\\[mh-insert-signature] after signature has been inserted.
3039 `mh-signature-file-name'."
3041 :group 'mh-hooks
3042 :group 'mh-letter
3045 (defcustom-mh mh-kill-folder-suppress-prompt-hooks '(mh-search-p)
3046 "Abnormal hook run at the beginning of \\<mh-folder-mode-map>\\[mh-kill-folder].
3052 The default value of `mh-search-p' suppresses the prompt on
3056 which returns t on \"+inbox\" and you hit \\[mh-kill-folder] by
3059 :group 'mh-hooks
3060 :group 'mh-folder
3063 (defcustom-mh mh-letter-mode-hook nil
3064 "Hook run by `mh-letter-mode' on a new letter.
3072 :group 'mh-hooks
3073 :group 'mh-sending-mail
3076 (defcustom-mh mh-mh-to-mime-hook nil
3077 "Hook run on the formatted letter by \\<mh-letter-mode-map>\\[mh-mh-to-mime]."
3079 :group 'mh-hooks
3080 :group 'mh-letter
3083 (defcustom-mh mh-search-mode-hook nil
3084 "Hook run upon entry to `mh-search-mode'\\<mh-folder-mode-map>.
3086 If you find that you do the same thing over and over when editing
3089 \\[mh-search] is run on a new pattern."
3091 :group 'mh-hooks
3092 :group 'mh-search
3095 (defcustom-mh mh-quit-hook nil
3096 "Hook run by \\<mh-folder-mode-map>\\[mh-quit] after quitting MH-E.
3101 See also `mh-before-quit-hook'."
3103 :group 'mh-hooks
3104 :group 'mh-folder
3107 (defcustom-mh mh-refile-msg-hook nil
3108 "Hook run by \\<mh-folder-mode-map>\\[mh-refile-msg] after marking each message for refiling."
3110 :group 'mh-hooks
3111 :group 'mh-folder
3114 (defcustom-mh mh-show-hook nil
3115 "Hook run after \\<mh-folder-mode-map>\\[mh-show] shows a message.
3119 `mh-show-mode-hook' is too early. See `mh-show-mode-hook'."
3121 :group 'mh-hooks
3122 :group 'mh-show
3125 (defcustom-mh mh-show-mode-hook nil
3126 "Hook run upon entry to `mh-show-mode'.
3130 message's content. See `mh-show-hook'."
3132 :group 'mh-hooks
3133 :group 'mh-show
3136 (defcustom-mh mh-unseen-updated-hook nil
3139 The variable `mh-seen-list' can be used by this hook to obtain
3143 :group 'mh-hooks
3144 :group 'mh-sequences
3150 ;;; Faces (:group 'mh-faces + group where faces described)
3153 (add-to-list 'facemenu-unlisted-faces "^mh-"))
3156 ;; 1. Add entry to variable mh-face-data.
3157 ;; 2. Create face using defface-mh (which removes min-color spec and
3159 ;; accessing face data with function mh-face-data.
3160 ;; 3. Add inherit argument to function mh-face-data if applicable.
3161 (defvar mh-face-data
3162 '((mh-folder-followup
3169 (mh-folder-msg-number
3178 (mh-folder-refiled
3191 (mh-folder-subject
3198 (mh-folder-tick
3205 (mh-folder-to
3218 (mh-letter-header-field
3225 (mh-search-folder
3232 (mh-show-cc
3245 (mh-show-date
3258 (mh-show-from
3265 (mh-show-header
3278 (mh-show-pgg-bad ((t (:bold t :foreground "DeepPink1"))))
3279 (mh-show-pgg-good ((t (:bold t :foreground "LimeGreen"))))
3280 (mh-show-pgg-unknown ((t (:bold t :foreground "DarkGoldenrod2"))))
3281 (mh-show-signature ((t (:italic t))))
3282 (mh-show-to
3292 (mh-speedbar-folder
3297 (mh-speedbar-selected-folder
3305 Used by function `mh-face-data' which returns spec that is
3306 consumed by `defface-mh'.")
3310 (defvar mh-inherit-face-flag (assq :inherit custom-face-attributes)
3315 (defvar mh-min-colors-defined-flag (and (not mh-xemacs-flag)
3319 (defun mh-face-data (face &optional inherit)
3325 FACE from the variable `mh-face-data'. This isn't a perfect
3330 Furthermore, when `mh-min-colors-defined-flag' is nil, this
3336 (if (and inherit mh-inherit-face-flag)
3338 (or (cadr (assq face mh-face-data))
3339 (error "Could not find %s in mh-face-data" face)))))
3341 (if mh-min-colors-defined-flag
3343 (let ((cells (mh-display-color-cells))
3359 (defface-mh mh-folder-address
3360 (mh-face-data 'mh-folder-subject '((t (:inherit mh-folder-subject))))
3362 :group 'mh-faces
3363 :group 'mh-folder
3366 (defface-mh mh-folder-body
3367 (mh-face-data 'mh-folder-msg-number
3369 (:inherit mh-folder-msg-number))
3371 (:inherit mh-folder-msg-number :italic t))))
3373 :group 'mh-faces
3374 :group 'mh-folder
3377 (defface-mh mh-folder-cur-msg-number
3378 (mh-face-data 'mh-folder-msg-number
3379 '((t (:inherit mh-folder-msg-number :bold t))))
3381 :group 'mh-faces
3382 :group 'mh-folder
3385 (defface-mh mh-folder-date
3386 (mh-face-data 'mh-folder-msg-number '((t (:inherit mh-folder-msg-number))))
3388 :group 'mh-faces
3389 :group 'mh-folder
3392 (defface-mh mh-folder-deleted
3393 (mh-face-data 'mh-folder-msg-number '((t (:inherit mh-folder-msg-number))))
3395 :group 'mh-faces
3396 :group 'mh-folder
3399 (defface-mh mh-folder-followup (mh-face-data 'mh-folder-followup)
3401 :group 'mh-faces
3402 :group 'mh-folder
3405 (defface-mh mh-folder-msg-number (mh-face-data 'mh-folder-msg-number)
3407 :group 'mh-faces
3408 :group 'mh-folder
3411 (defface-mh mh-folder-refiled (mh-face-data 'mh-folder-refiled)
3413 :group 'mh-faces
3414 :group 'mh-folder
3417 (defface-mh mh-folder-sent-to-me-hint
3418 (mh-face-data 'mh-folder-msg-number '((t (:inherit mh-folder-date))))
3421 format `mh-scan-format-nmh' and the regular expression
3422 `mh-scan-sent-to-me-sender-regexp'."
3423 :group 'mh-faces
3424 :group 'mh-folder
3427 (defface-mh mh-folder-sent-to-me-sender
3428 (mh-face-data 'mh-folder-followup '((t (:inherit mh-folder-followup))))
3431 format `mh-scan-format-nmh' and the regular expression
3432 `mh-scan-sent-to-me-sender-regexp'."
3433 :group 'mh-faces
3434 :group 'mh-folder
3437 (defface-mh mh-folder-subject (mh-face-data 'mh-folder-subject)
3439 :group 'mh-faces
3440 :group 'mh-folder
3443 (defface-mh mh-folder-tick (mh-face-data 'mh-folder-tick)
3445 :group 'mh-faces
3446 :group 'mh-folder
3449 (defface-mh mh-folder-to (mh-face-data 'mh-folder-to)
3451 :group 'mh-faces
3452 :group 'mh-folder
3455 (defface-mh mh-letter-header-field (mh-face-data 'mh-letter-header-field)
3457 :group 'mh-faces
3458 :group 'mh-letter
3461 (defface-mh mh-search-folder (mh-face-data 'mh-search-folder)
3463 :group 'mh-faces
3464 :group 'mh-search
3467 (defface-mh mh-show-cc (mh-face-data 'mh-show-cc)
3469 :group 'mh-faces
3470 :group 'mh-show
3473 (defface-mh mh-show-date (mh-face-data 'mh-show-date)
3475 :group 'mh-faces
3476 :group 'mh-show
3479 (defface-mh mh-show-from (mh-face-data 'mh-show-from)
3481 :group 'mh-faces
3482 :group 'mh-show
3485 (defface-mh mh-show-header (mh-face-data 'mh-show-header)
3487 :group 'mh-faces
3488 :group 'mh-show
3491 (defface-mh mh-show-pgg-bad (mh-face-data 'mh-show-pgg-bad)
3493 :group 'mh-faces
3494 :group 'mh-show
3497 (defface-mh mh-show-pgg-good (mh-face-data 'mh-show-pgg-good)
3499 :group 'mh-faces
3500 :group 'mh-show
3503 (defface-mh mh-show-pgg-unknown (mh-face-data 'mh-show-pgg-unknown)
3505 :group 'mh-faces
3506 :group 'mh-show
3509 (defface-mh mh-show-signature (mh-face-data 'mh-show-signature)
3511 :group 'mh-faces
3512 :group 'mh-show
3515 (defface-mh mh-show-subject
3516 (mh-face-data 'mh-folder-subject '((t (:inherit mh-folder-subject))))
3518 :group 'mh-faces
3519 :group 'mh-show
3522 (defface-mh mh-show-to (mh-face-data 'mh-show-to)
3524 :group 'mh-faces
3525 :group 'mh-show
3528 (defface-mh mh-show-xface
3529 (mh-face-data 'mh-show-from '((t (:inherit (mh-show-from highlight)))))
3532 :group 'mh-faces
3533 :group 'mh-show
3536 (defface-mh mh-speedbar-folder (mh-face-data 'mh-speedbar-folder)
3538 :group 'mh-faces
3539 :group 'mh-speedbar
3542 (defface-mh mh-speedbar-folder-with-unseen-messages
3543 (mh-face-data 'mh-speedbar-folder
3544 '((t (:inherit mh-speedbar-folder :bold t))))
3546 :group 'mh-faces
3547 :group 'mh-speedbar
3550 (defface-mh mh-speedbar-selected-folder
3551 (mh-face-data 'mh-speedbar-selected-folder)
3553 :group 'mh-faces
3554 :group 'mh-speedbar
3557 (defface-mh mh-speedbar-selected-folder-with-unseen-messages
3558 (mh-face-data 'mh-speedbar-selected-folder
3559 '((t (:inherit mh-speedbar-selected-folder :bold t))))
3561 :group 'mh-faces
3562 :group 'mh-speedbar
3565 (provide 'mh-e)
3573 ;;; mh-e.el ends here