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

Lines Matching +defs:gnus +defs:summary +defs:followup +defs:to +defs:mail

1 ;;; mh-e.el --- GNU Emacs interface to the MH mail system
10 ;; Keywords: mail
25 ;; along with GNU Emacs; see the file COPYING. If not, write to the
31 ;; MH-E is an Emacs interface to the MH mail system.
38 ;; MH (Message Handler) is a powerful mail reader. See
43 ;; the -build switch to repl and forw.
45 ;; How to use:
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.
55 ;; If Emacs can't find mh-rmail or mh-smail, add the following to ~/.emacs:
58 ;; If you want to customize MH-E before explicitly loading it, add this:
66 ;; Subscribe by sending a "subscribe" message to
68 ;; https://sourceforge.net/mail/?group_id=13357
92 ;; Provide functions to the rest of MH-E. However, mh-e.el must not
134 ;; Try to keep variables local to a single file. Provide accessors if
152 "List of directories to search for variants of the MH variant.
153 The list `exec-path' is searched in addition to this list.
154 There's no need for users to modify this list. Instead add extra
155 directories to the customizable variable `mh-path'.")
164 This differs from `mh-variant' when the latter is set to
196 Set to \"+inbox\" if no such component.
201 User's mail folder directory.")
247 "List of message numbers to delete.
269 "Direction to move to next message.")
280 "List of displayed messages to be removed from the \"Unseen\" sequence.")
315 (defvar mh-mail-header-separator "--------"
316 "*Line used by MH to separate headers from text in messages being composed.
319 should use `mail-header-separator' instead.
320 `mail-header-separator' is initialized to
321 `mh-mail-header-separator' in `mh-letter-mode'; in other
322 contexts, you may have to perform this initialization yourself.
325 to `insert' and it is passed through `regexp-quote' before being
354 (defvar mh-page-to-next-msg-flag nil
355 "Non-nil means next SPC or whatever goes to next undeleted message.")
363 A signature separator is used to separate the body of a message
365 to render the signature differently or to suppress the inclusion
374 "Map of message index to various parts of the scan line.")
378 "Old map of message index to various parts of the scan line.
385 If nil, this variable is initialized to show the version of MH-E,
393 (eval-when-compile (require 'gnus))
395 (defmacro mh-macro-expansion-time-gnus-version ()
399 gnus-version)
401 (defun mh-run-time-gnus-version ()
403 (require 'gnus)
404 gnus-version)
408 "Display version information about MH-E and the MH mail handling system."
417 (gnus-compiled-version (if compiled-mhe
418 (mh-macro-expansion-time-gnus-version)
421 " Gnus (compile-time):\t" gnus-compiled-version "\n"
422 " Gnus (run-time):\t" (mh-run-time-gnus-version) "\n\n"))
444 (defun mh-list-to-string (l)
446 (nreverse (mh-list-to-string-1 l)))
448 (defun mh-list-to-string-1 (l)
456 (push (int-to-string element) new-list))
461 (setq new-list (nconc (mh-list-to-string-1 element) new-list)))
478 `mh-index-max-cmdline-args' strings to it. This is repeated till
499 ;; XXX This should be applied anywhere MH-E calls out to /bin/sh.
511 The side effects are what is desired. Any output is assumed to be
512 an error and is shown to the user. The output is not read or
518 (args (mh-list-to-string args)))
527 (switch-to-buffer-other-window mh-log-buffer)
545 nil t nil (mh-list-to-string args))))))
550 If FILTER is non-nil then it is used to process the output
554 ARGS are passed to COMMAND as command line arguments."
562 (mh-list-to-string args))))
572 If FILTER is non-nil then it is used to process the output
576 ARGS are passed to COMMAND as command line arguments."
613 Output is expected to be shown to user, not parsed by MH-E."
617 (mh-list-to-string args))
621 ;; turns on highlighting. So prior to this bug fix, doing "inc" would
700 "Declare SYMBOL as a customizable variable that defaults to VALUE.
710 "Declare FACE as a customizable face that defaults to SPEC.
725 "*Additional list of directories to search for MH.
740 ;; We don't want the same MH variant to be listed multiple times.
743 (add-to-list 'list-unique dir))
748 (add-to-list 'mh-variants variant)))))
906 "Set the MH variant to VARIANT.
945 `exec-path'. If MH-E can't find MH at all, you may have to
949 initialized to nmh but you want to use mailutils, then you can
950 set this option to \"mailutils\".
954 accordingly. Prior to version 8, it was often necessary to set
972 ;; here. This makes it possible to customize modules that aren't
973 ;; loaded yet. It also makes it easier to organize the customization
1015 (add-to-list 'customize-package-emacs-version-alist
1026 "Emacs interface to the MH mail system.
1030 :group 'mail
1041 "Organizing your mail with folders."
1062 "Incorporating your mail."
1069 "Dealing with junk mail."
1103 (defgroup-mh mh-sending-mail nil
1104 "Sending mail."
1118 "Reading your mail."
1173 may turn off this option to make case significant which can be
1174 used to segregate completion of your aliases. You might use
1181 "*Non-nil means to expand aliases entered in the minibuffer.
1184 expanded to the full address in the message draft. By default,
1191 "*Specify whether to flash address or warn on translation.
1204 "*Filename used to store a new MH-E alias.
1208 list a file names. If this option is set to a list of file names,
1220 This option is set to \"Alphabetical\" by default. If you organize
1221 your alias file in other ways, then adding aliases to the \"Top\"
1230 "*Non-nil means local users are added to alias completion.
1243 This option also takes a string which is executed to generate the
1244 password file. For example, use \"ypcat passwd\" to obtain the
1251 "*String prefixed to the real names of users from the password file.
1252 This option can also be set to \"Use Login\".
1276 to separate different values within the so-called gecos field.
1289 Set this option to \"Inbox\" to search the \"+inbox\" folder or
1290 \"All\" to search all of the top level folders. Otherwise, list
1304 Set this option to \"Inbox\" to search the \"+inbox\" folder or
1305 \"All\" to search all of the top level folders. Otherwise, list
1319 If a folder is deemed to be large, that is the number of messages
1322 is not automatically threaded, if it is large. If set to nil all
1328 (defcustom-mh mh-recenter-summary-flag nil
1329 "*Non-nil means to recenter the summary window.
1331 If this option is turned on, recenter the summary window when the
1347 \\[mh-sort-folder]. Normally default arguments to \"sortm\" are
1348 specified in the MH profile. This option may be used to provide
1358 "Function to select a default folder for refiling or \"Fcc:\".
1364 the default, or an empty string to suppress the default entirely."
1388 "*Non-nil means guessed folder name must exist to be used.
1392 mail from various people for whom you have an alias, but file
1403 The prefix is used to prevent clutter in your mail directory.
1441 key to sign or encrypt messages with the \"GPG Key ID\" menu item.
1448 The \"Identity\" menu contains two other items to save you from having
1449 to set the identity on every message. The menu item \"Set Default for
1450 Session\" can be used to set the default identity to the current
1452 the option `mh-identity-default' to the current identity setting. You
1492 This option can be used to set the identity depending on the
1498 The \"Identity\" menu item is used to select an identity from those
1501 item is used to select a folder that is used in the \"Fcc:\" header.
1503 folder. The \"Mail-Followup-To Field\" menu item is used to insert an
1505 the recipient's mail user agent supports this header field (as nmh
1506 does), then their replies will go to the addresses listed. This is
1507 useful if their replies go both to the list and to you and you don't
1508 have a mechanism to suppress duplicates. If you reply to someone not
1511 to your reply. Other header fields may be added using the \"Other
1517 Auto Fields\" menu item to insert these fields manually. However, you
1519 You are given a chance to see these fields and to confirm them before
1524 and `mh-identity-list' definitions that may apply to the same message
1551 "*Non-nil means to prompt before sending if fields inserted.
1558 "Default identity to use when `mh-letter-mode' is called.
1576 This option is used to change the way that fields, signatures,
1579 function associated with the field you want to change with the
1582 the function you have written to handle it.
1605 "*Program to incorporate new mail into a folder.
1607 This program generates a one-line summary for each of the new
1609 to be in the `mh-progs' directory. You may also link a file to
1610 \"inc\" that uses a different format. You'll then need to modify
1626 You can use the `mh-inc-spool-list' variable to direct MH-E to
1627 retrieve mail from arbitrary spool files other than your system
1629 key bindings to incorporate this mail.
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
1635 MAILDIR=$HOME/mail
1637 * ^From mh-e-devel-admin@stop.mail-abuse.org
1640 In order to incorporate \"~/mail/mh-e\" into \"+mh-e\" with an
1642 on the \"INS\" button. Enter a \"Spool File\" of \"~/mail/mh-e\", a
1645 You can use \"xbuffy\" to automate the incorporation of this mail
1648 box ~/mail/mh-e
1676 "Available choices of spam programs to use.
1683 "Choose spam program to use.
1685 The function is always called with SYMBOL bound to
1686 `mh-junk-program' and VALUE bound to the new value of
1688 `mh-junk-choice' in addition to `mh-junk-program'."
1705 call to `call-process'. Therefore, turning on this option means
1706 setting its value to \"0\". You can also set its value to t to
1707 direct the programs' output to the \"*MH-E Log*\" buffer; this
1715 "Disposition of junk mail."
1727 both SpamAssassin and bogofilter installed and you want to use
1728 bogofilter, then you can set this option to \"Bogofilter\"."
1742 In addition to MH-style directives, MH-E also supports MML (MIME
1744 This option can be used to choose between them. By default, this
1745 option is set to \"MML\" if it is supported since it provides a
1746 lot more functionality. This option can also be set to \"MH\" if
1756 "List of header fields to skip over when navigating in draft."
1771 yanking it with \\<mh-letter-mode-map>\\[mh-yank-cur-msg] to make
1778 "*Verb to use for attribution when a message is yanked by \\<mh-letter-mode-map>\\[mh-yank-cur-msg].
1781 followed by the content of this option. This option can be set to
1783 \"Custom String\" menu item to enter your own verb."
1792 "*String to put before each line of a yanked or inserted message.
1796 mailers and news readers: messages are far easier to read if
1802 `mail-citation-hook'."
1808 "*Function to call when completing outside of address or folder fields.
1812 which is set to \"ispell-complete-word\" by default."
1818 "*Fill column to use in MH Letter mode.
1820 By default, this option is 72 to allow others to quote your
1827 "Default method to use in security tags.
1829 This option is used to select between a variety of mail security
1839 If you keep a copy of all of your outgoing mail with a \"Fcc:\"
1840 header field, this setting is vital so that you can read the mail
1858 called. You may not want a signature separator to be added for you;
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
1876 mail user agents, including MH-E, use the separator to present
1877 the signature differently, and to suppress the signature when
1884 "*File containing face header field to insert in outgoing mail.
1887 or \"X-Image-URL:\" then the contents are added to the message header
1898 Use the \"make-face\" script to convert a JPEG image to the higher
1900 `http://quimby.gnus.org/circus/face/make-face').
1906 `mh-x-face-file' to nil, or simply ensure that the file defined by
1916 \"Body and Header\". Use \"Body\" to yank just the body without
1918 point, set this option to \"Below Point\".
1920 Choose \"Invoke supercite\" to pass the entire message and header
1929 are used, the \"-noformat\" argument is passed to the \"repl\"
1930 program to override a \"-filter\" or \"-format\" argument. These
1932 action automatically when you reply so that you don't need to use
1935 replied to. People who use the automatic variants tend to turn on
1941 case the attribution is added to the yanked region.
1943 If this option is set to one of the supercite flavors, the hook
1944 `mail-citation-hook' is ignored and `mh-ins-buf-prefix' is not
1964 option is on (which is the default). If you need to scan just the
1982 If you've created your own format to handle long message numbers,
1983 you'll be pleased to know you no longer need it since MH-E adapts its
1986 `mh-scan-format-file' is set to \"Use MH-E scan Format\".
1999 Throw an error if user tries to set `mh-scan-format-file' to
2001 set SYMBOL to VALUE."
2009 "Specifies the format file to pass to the scan program.
2014 nmh (or GNU mailutils) is in use. This setting also enables you to
2017 You can also set this option to \"Use Default scan Format\" to get the
2019 you have a format file that you want MH-E to use but not MH, you can
2020 set this option to \"Specify a scan Format File\" and enter the name
2023 If you change the format of the scan lines you'll need to tell MH-E
2024 how to parse the new format. As you will see, quite a lot of variables
2025 are involved to do that. Use \"\\[apropos] RET mh-scan.*regexp\" to
2026 obtain a list of these variables. You will also have to call
2038 Throw an error if user tries to turn on
2040 Otherwise, set SYMBOL to VALUE."
2044 "is set to \"Use MH-E scan Format\"")
2048 "*Program used to scan messages.
2052 absolute pathname, it is assumed to be in the `mh-progs'
2053 directory. You may link another program to `scan' (see
2054 \"mh-profile(5)\") to produce a different type of listing."
2068 have both swish++ and mairix installed and you want to use
2069 mairix, then you can set this option to \"mairix\".
2071 More information about setting up an indexing program to use with
2083 ;;; Sending Mail (:group 'mh-sending-mail)
2089 messages are included as attachments. If you would prefer to
2092 textual messages, but your recipient won't be able to view any
2098 :group 'mh-sending-mail
2106 to write and send the message for you. This function is passed
2110 :group 'mh-sending-mail
2116 :group 'mh-sending-mail
2126 :group 'mh-sending-mail
2130 "*Non-nil means append an \"X-Mailer:\" header field to the header.
2133 are using. If you don't want to participate in our marketing, you
2136 :group 'mh-sending-mail
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
2152 "*Sets the person or persons to whom a reply will be sent.
2154 This option is set to \"Prompt\" by default so that you are
2156 the time that you specify \"cc\" when you reply to a message, set
2157 this option to \"cc\". Other choices include \"from\", \"to\", or
2161 (const "to")
2164 :group 'mh-sending-mail
2175 :group 'mh-sending-mail
2180 ;; If `mh-unpropagated-sequences' becomes a defcustom, add the following to
2181 ;; the docstring: "Additional sequences that should not to be preserved can be
2201 there isn't much advantage to that."
2208 "*Non-nil means flush MH sequences to disk after message is shown\\<mh-folder-mode-map>.
2211 to MH when a message is shown. They include the sequence
2229 because of its proximity to its associated MH-Folder buffer. Try
2230 running \\[electric-buffer-list] to see what I mean."
2253 \\[mh-toggle-mh-decode-mime-flag] to view the raw message.
2265 Sometimes, a mail program will produce multiple alternatives of
2266 the attachment in increasing degree of faithfulness to the
2278 that they do not really appear like an attachment at all to the
2281 may receive code or HTML which the sender has added to his message as
2283 is useful to see the buttons so that you know you don't have to cut
2286 If you want to make the buttons visible for inline attachments, you
2287 can use the command \\[mh-toggle-mime-buttons] to toggle the
2300 Commands such as `mh-pack-folder' prompt to confirm whether to
2329 yes if you've set this option to \"Ask Before Fetching\"). Someone may
2331 of messages, each specifying a unique URL to a very large file.
2334 within your MH directory. You can add your own face to the \"From:\"
2348 It is a long standing custom to inject body language using a
2368 italics, and so on. See the option `gnus-emphasis-alist' for the
2377 (defcustom-mh mh-highlight-citation-style 'gnus
2381 message, then MH-E will highlight these citations to emphasize
2382 the sender's actual response. This option can be customized to
2387 :type '(choice (const :tag "Multicolor" gnus)
2405 "Envelope-to:"
2424 "Original-Lines:" ; mail to news
2425 "Original-NNTP-" ; mail to news
2426 "Original-Newsgroups:" ; mail to news
2427 "Original-Path:" ; mail to news
2428 "Original-Received:" ; mail to news
2429 "Original-To:" ; mail to news
2430 "Original-X-" ; mail to news
2450 ;; "User-Agent:" ; Similar to X-Mailer, so display it.
2481 "X-Evolution:" ; Evolution mail client
2486 "X-Gnus-Mail-Source:" ; gnus
2531 ;;"X-Operator:" ; Similar to X-Mailer, so display it
2547 "X-Resolved-to:" ; fastmail.fm
2585 "List of default header fields that are not to be shown.
2588 here that you would like to be displayed in
2589 `mh-invisible-header-fields-default' and add entries to hide in
2600 "Non-nil means to delay the generation of invisible header fields.
2606 "*Additional header fields to hide.
2608 Header fields that you would like to hide that aren't listed in
2609 `mh-invisible-header-fields-default' can be added to this option
2612 can be used to render invisible an entire class of fields that
2630 can check off any field that you would like to see.
2632 Header fields that you would like to hide that aren't listed can
2633 be added to the option `mh-invisible-header-fields'.
2645 "*Regexp matching lines in a message header that are not to be shown.
2648 hidden that you wish to display, and add extra entries to hide in
2680 "*Command used to print\\<mh-folder-mode-map>.
2699 Some older mail programs do not insert this needed plumbing to
2700 tell MH-E whether to display the attachments inline or not. If
2702 are smaller than the window. However, you might want to allow
2703 larger images to be displayed inline. To do this, you can change
2705 `mh-max-inline-image-height' from their default value of zero to
2715 Some older mail programs do not insert this needed plumbing to
2716 tell MH-E whether to display the attachments inline or not. If
2718 are smaller than the window. However, you might want to allow
2719 larger images to be displayed inline. To do this, you can change
2721 `mh-max-inline-image-height' from their default value of zero to
2729 "*Specifies the format file to pass to the \"mhl\" program.
2732 calling an MH program to do the work). If you'd rather have \"mhl\"
2736 You can set this option to \"Use Default mhl Format\" to get the same
2739 If you have a format file that you want MH-E to use, you can set this
2740 option to \"Specify an mhl Format File\" and enter the name of your
2742 \"overflowoffset\" to allow MH-E to parse the header. Note that
2753 "Default directory to use for \\<mh-folder-mode-map>\\[mh-mime-save-parts].
2756 you are always prompted for the directory in which to save the
2758 within a session, then you can set this option to \"Prompt the
2759 First Time\" to avoid the prompt each time. you can make this
2772 your system, you may elect to turn off this option to print in the
2785 "*Maximum size of message (in bytes) to display automatically.
2787 This option provides an opportunity to skip over large messages
2788 which may be slow to load. The default value of 0 means that all
2804 The option `mh-show-use-xface-flag' is used to turn this feature on
2811 `http://quimby.gnus.org/circus/face/'. Next is the traditional
2823 to fetch the image and the \"convert\" program from the ImageMagick
2826 image doesn't need to be transmitted with every single mail.
2837 If you would like to change the initial default directory,
2838 customize this option, change the value from \"Current\" to
2846 (defcustom-mh mh-summary-height nil
2853 lines you'd like to see."
2863 Set to 0 to disable automatic update."
2889 By default, this is set to `mh-search'. You can also choose
2902 This option controls whether to show the MH-E icons at all. By
2905 won't be able to turn on this option."
2921 variable is set to anything other than \"Same As Default Tool
2961 and `mh-refile-list' which can be used to see which changes will
2962 be made to the current folder, `mh-current-folder'."
2972 to perform any MH-E operations; you could perform some query and
2984 For example, if you want to check your spelling in your message
2996 kept statistics on his mail usage."
3006 `mh-find-path' sets if you need to run with different values
3024 :group 'mh-sending-mail
3028 "Hook run by \\<mh-folder-mode-map>\\[mh-inc-folder] after incorporating mail into a folder."
3038 function used to insert the signature with
3049 a non-nil value to suppress the normal prompt when you remove a
3066 This hook allows you to do some processing before editing a
3067 letter. For example, you may wish to modify the header after
3069 \"components\" file and need to tell MH-E where the cursor should
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]."
3084 "Hook run upon entry to `mh-search-mode'\\<mh-folder-mode-map>.
3087 the search template, you may wish to bind some shortcuts to keys.
3098 This hook is not run in an MH-E context, so you might use it to
3118 used to affect the behavior of MH-E in general or when
3126 "Hook run upon entry to `mh-show-mode'.
3129 display. It is usually used to perform some action on the
3139 The variable `mh-seen-list' can be used by this hook to obtain
3153 (add-to-list 'facemenu-unlisted-faces "^mh-"))
3156 ;; 1. Add entry to variable mh-face-data.
3160 ;; 3. Add inherit argument to function mh-face-data if applicable.
3162 '((mh-folder-followup
3205 (mh-folder-to
3282 (mh-show-to
3328 not added to the returned spec.
3399 (defface-mh mh-folder-followup (mh-face-data 'mh-folder-followup)
3417 (defface-mh mh-folder-sent-to-me-hint
3419 "Fontification hint face in messages sent directly to us.
3420 The detection of messages sent to us is governed by the scan
3422 `mh-scan-sent-to-me-sender-regexp'."
3427 (defface-mh mh-folder-sent-to-me-sender
3428 (mh-face-data 'mh-folder-followup '((t (:inherit mh-folder-followup))))
3429 "Sender face in messages sent directly to us.
3430 The detection of messages sent to us is governed by the scan
3432 `mh-scan-sent-to-me-sender-regexp'."
3449 (defface-mh mh-folder-to (mh-face-data 'mh-folder-to)
3468 "Face used to highlight \"cc:\" header fields."
3474 "Face used to highlight \"Date:\" header fields."
3480 "Face used to highlight \"From:\" header fields."
3486 "Face used to deemphasize less interesting header fields."
3517 "Face used to highlight \"Subject:\" header fields."
3522 (defface-mh mh-show-to (mh-face-data 'mh-show-to)
3523 "Face used to highlight \"To:\" header fields."