diff options
| author | Bill Wohler | 2005-11-02 01:13:07 +0000 |
|---|---|---|
| committer | Bill Wohler | 2005-11-02 01:13:07 +0000 |
| commit | b2064e08398c5d5abfd21bcb4eb85e4de0349a4d (patch) | |
| tree | bf23cee9491f1585442df0687db33e54940ea3aa | |
| parent | 899481b730c37d959d466846299cc99f5f7c37fb (diff) | |
| download | emacs-b2064e08398c5d5abfd21bcb4eb85e4de0349a4d.tar.gz emacs-b2064e08398c5d5abfd21bcb4eb85e4de0349a4d.zip | |
* mh-comp.el (mh-redist-full-contents) Convert defvar to defcustom.
(mh-smail, mh-extract-rejected-mail, mh-forward, mh-redistribute)
(mh-reply, mh-send, mh-send-other-window)
(mh-fill-paragraph-function): Sync docstrings with manual.
* mh-customize.el (mh-redist-full-contents-flag): Convert defvar to
defcustom.
(mh-compose-forward-as-mime-flag)
(mh-compose-letter-function, mh-forward-subject-format)
(mh-insert-x-mailer-flag, mh-reply-default-reply-to)
(mh-reply-show-message-flag, mh-letter-mode-hook): Sync docstrings
with manual.
| -rw-r--r-- | lisp/mh-e/ChangeLog | 16 | ||||
| -rw-r--r-- | lisp/mh-e/mh-comp.el | 227 | ||||
| -rw-r--r-- | lisp/mh-e/mh-customize.el | 75 |
3 files changed, 209 insertions, 109 deletions
diff --git a/lisp/mh-e/ChangeLog b/lisp/mh-e/ChangeLog index e8e9c1c9baa..686b681da14 100644 --- a/lisp/mh-e/ChangeLog +++ b/lisp/mh-e/ChangeLog | |||
| @@ -1,5 +1,21 @@ | |||
| 1 | 2005-11-01 Bill Wohler <wohler@newt.com> | 1 | 2005-11-01 Bill Wohler <wohler@newt.com> |
| 2 | 2 | ||
| 3 | * mh-comp.el (mh-redist-full-contents) Convert defvar to | ||
| 4 | defcustom. | ||
| 5 | (mh-smail, mh-extract-rejected-mail, mh-forward, mh-redistribute) | ||
| 6 | (mh-reply, mh-send, mh-send-other-window) | ||
| 7 | (mh-fill-paragraph-function): Sync docstrings with manual. | ||
| 8 | (mh-edit-again, mh-extract-rejected-mail, mh-redistribute): Rename | ||
| 9 | msg argument to message (to make for a better docstring). | ||
| 10 | |||
| 11 | * mh-customize.el (mh-redist-full-contents-flag): Convert defvar | ||
| 12 | to defcustom. | ||
| 13 | (mh-compose-forward-as-mime-flag) | ||
| 14 | (mh-compose-letter-function, mh-forward-subject-format) | ||
| 15 | (mh-insert-x-mailer-flag, mh-reply-default-reply-to) | ||
| 16 | (mh-reply-show-message-flag, mh-letter-mode-hook): Sync docstrings | ||
| 17 | with manual. | ||
| 18 | |||
| 3 | * mh-print.el (mh-ps-spool-buffer, mh-ps-spool-a-msg) | 19 | * mh-print.el (mh-ps-spool-buffer, mh-ps-spool-a-msg) |
| 4 | (mh-ps-print-msg): Remove debugging messages. | 20 | (mh-ps-print-msg): Remove debugging messages. |
| 5 | (mh-ps-print-msg-show, mh-ps-print-msg-show) | 21 | (mh-ps-print-msg-show, mh-ps-print-msg-show) |
diff --git a/lisp/mh-e/mh-comp.el b/lisp/mh-e/mh-comp.el index 232c0399c03..7c955cf0353 100644 --- a/lisp/mh-e/mh-comp.el +++ b/lisp/mh-e/mh-comp.el | |||
| @@ -86,11 +86,6 @@ before, and `sc-post-hook' is run after the guts of this function.") | |||
| 86 | "Name of the MH send program. | 86 | "Name of the MH send program. |
| 87 | Some sites need to change this because of a name conflict.") | 87 | Some sites need to change this because of a name conflict.") |
| 88 | 88 | ||
| 89 | (defvar mh-redist-full-contents nil | ||
| 90 | "Non-nil if the `dist' command needs whole letter for redistribution. | ||
| 91 | This is the case only when `send' is compiled with the BERK option. | ||
| 92 | If MH will not allow you to redist a previously redist'd msg, set to nil.") | ||
| 93 | |||
| 94 | (defvar mh-redist-background nil | 89 | (defvar mh-redist-background nil |
| 95 | "If non-nil redist will be done in background like send. | 90 | "If non-nil redist will be done in background like send. |
| 96 | This allows transaction log to be visible if -watch, -verbose or -snoop are | 91 | This allows transaction log to be visible if -watch, -verbose or -snoop are |
| @@ -195,24 +190,29 @@ Used by the \\<mh-folder-mode-map>`\\[mh-edit-again]' and `\\[mh-extract-rejecte | |||
| 195 | 190 | ||
| 196 | ;;;###autoload | 191 | ;;;###autoload |
| 197 | (defun mh-smail () | 192 | (defun mh-smail () |
| 198 | "Compose and send mail with the MH mail system. | 193 | "Compose a message with the MH mail system. |
| 199 | This function is an entry point to MH-E, the Emacs interface to the MH mail | ||
| 200 | system. | ||
| 201 | |||
| 202 | See `mh-send' for more details on composing mail." | 194 | See `mh-send' for more details on composing mail." |
| 203 | (interactive) | 195 | (interactive) |
| 204 | (mh-find-path) | 196 | (mh-find-path) |
| 205 | (call-interactively 'mh-send)) | 197 | (call-interactively 'mh-send)) |
| 206 | 198 | ||
| 199 | ;;;###autoload | ||
| 200 | (defun mh-smail-other-window () | ||
| 201 | "Compose a message with the MH mail system in other window. | ||
| 202 | See `mh-send' for more details on composing mail." | ||
| 203 | (interactive) | ||
| 204 | (mh-find-path) | ||
| 205 | (call-interactively 'mh-send-other-window)) | ||
| 206 | |||
| 207 | (defvar mh-error-if-no-draft nil) ;raise error over using old draft | 207 | (defvar mh-error-if-no-draft nil) ;raise error over using old draft |
| 208 | 208 | ||
| 209 | ;;;###autoload | 209 | ;;;###autoload |
| 210 | (defun mh-smail-batch (&optional to subject other-headers &rest ignored) | 210 | (defun mh-smail-batch (&optional to subject other-headers &rest ignored) |
| 211 | "Set up a mail composition draft with the MH mail system. | 211 | "Compose a message with the MH mail system. |
| 212 | This function is an entry point to MH-E, the Emacs interface to the MH mail | 212 | |
| 213 | system. This function does not prompt the user for any header fields, and thus | 213 | This function does not prompt the user for any header fields, and thus |
| 214 | is suitable for use by programs that want to create a mail buffer. Users | 214 | is suitable for use by programs that want to create a mail buffer. Users |
| 215 | should use `mh-smail' to compose mail. | 215 | should use \\[mh-smail] to compose mail. |
| 216 | 216 | ||
| 217 | Optional arguments for setting certain fields include TO, SUBJECT, and | 217 | Optional arguments for setting certain fields include TO, SUBJECT, and |
| 218 | OTHER-HEADERS. Additional arguments are IGNORED." | 218 | OTHER-HEADERS. Additional arguments are IGNORED." |
| @@ -245,10 +245,25 @@ CONTINUE, SWITCH-FUNCTION, YANK-ACTION and SEND-ACTIONS are ignored." | |||
| 245 | (setq other-headers (cdr other-headers))))) | 245 | (setq other-headers (cdr other-headers))))) |
| 246 | 246 | ||
| 247 | ;;;###mh-autoload | 247 | ;;;###mh-autoload |
| 248 | (defun mh-edit-again (msg) | 248 | (defun mh-edit-again (message) |
| 249 | "Clean up a draft or a message MSG previously sent and make it resendable. | 249 | "Edit a MESSAGE to send it again. |
| 250 | Default is the current message. | 250 | |
| 251 | The variable `mh-new-draft-cleaned-headers' specifies the headers to remove. | 251 | If you don't complete a draft for one reason or another, and if the draft |
| 252 | buffer is no longer available, you can pick your draft up again with this | ||
| 253 | command. If you don't use a draft folder, your last \"draft\" file will be | ||
| 254 | used. If you use draft folders, you'll need to visit the draft folder with | ||
| 255 | \"\\[mh-visit-folder] drafts <RET>\", use \\[mh-next-undeleted-msg] to move to | ||
| 256 | the appropriate message, and then use \\[mh-edit-again] to prepare the message | ||
| 257 | for editing. | ||
| 258 | |||
| 259 | This command can also be used to take messages that were sent to you and to | ||
| 260 | send them to more people. | ||
| 261 | |||
| 262 | Don't use this command to re-edit a message from a Mailer-Daemon who | ||
| 263 | complained that your mail wasn't posted for some reason or another (see | ||
| 264 | `mh-extract-rejected-mail'). | ||
| 265 | |||
| 266 | The default message is the current message. | ||
| 252 | 267 | ||
| 253 | See also `mh-send'." | 268 | See also `mh-send'." |
| 254 | (interactive (list (mh-get-msg-num t))) | 269 | (interactive (list (mh-get-msg-num t))) |
| @@ -256,8 +271,9 @@ See also `mh-send'." | |||
| 256 | (config (current-window-configuration)) | 271 | (config (current-window-configuration)) |
| 257 | (draft | 272 | (draft |
| 258 | (cond ((and mh-draft-folder (equal from-folder mh-draft-folder)) | 273 | (cond ((and mh-draft-folder (equal from-folder mh-draft-folder)) |
| 259 | (pop-to-buffer (find-file-noselect (mh-msg-filename msg)) t) | 274 | (pop-to-buffer (find-file-noselect (mh-msg-filename message)) |
| 260 | (rename-buffer (format "draft-%d" msg)) | 275 | t) |
| 276 | (rename-buffer (format "draft-%d" message)) | ||
| 261 | ;; Make buffer writable... | 277 | ;; Make buffer writable... |
| 262 | (setq buffer-read-only nil) | 278 | (setq buffer-read-only nil) |
| 263 | ;; If buffer was being used to display the message reinsert | 279 | ;; If buffer was being used to display the message reinsert |
| @@ -267,7 +283,7 @@ See also `mh-send'." | |||
| 267 | (insert-file-contents buffer-file-name)) | 283 | (insert-file-contents buffer-file-name)) |
| 268 | (buffer-name)) | 284 | (buffer-name)) |
| 269 | (t | 285 | (t |
| 270 | (mh-read-draft "clean-up" (mh-msg-filename msg) nil))))) | 286 | (mh-read-draft "clean-up" (mh-msg-filename message) nil))))) |
| 271 | (mh-clean-msg-header (point-min) mh-new-draft-cleaned-headers nil) | 287 | (mh-clean-msg-header (point-min) mh-new-draft-cleaned-headers nil) |
| 272 | (mh-insert-header-separator) | 288 | (mh-insert-header-separator) |
| 273 | (goto-char (point-min)) | 289 | (goto-char (point-min)) |
| @@ -278,16 +294,20 @@ See also `mh-send'." | |||
| 278 | (mh-letter-adjust-point))) | 294 | (mh-letter-adjust-point))) |
| 279 | 295 | ||
| 280 | ;;;###mh-autoload | 296 | ;;;###mh-autoload |
| 281 | (defun mh-extract-rejected-mail (msg) | 297 | (defun mh-extract-rejected-mail (message) |
| 282 | "Extract message MSG returned by the mail system and make it resendable. | 298 | "Edit a MESSAGE that was returned by the mail system. |
| 283 | Default is the current message. The variable `mh-new-draft-cleaned-headers' | 299 | |
| 284 | gives the headers to clean out of the original message. | 300 | This command prepares the message for editing by removing the Mailer-Daemon |
| 301 | envelope and unneeded header fields. Fix whatever addressing problem you had, | ||
| 302 | and send the message again with \\[mh-send-letter]. | ||
| 303 | |||
| 304 | The default message is the current message. | ||
| 285 | 305 | ||
| 286 | See also `mh-send'." | 306 | See also `mh-send'." |
| 287 | (interactive (list (mh-get-msg-num t))) | 307 | (interactive (list (mh-get-msg-num t))) |
| 288 | (let ((from-folder mh-current-folder) | 308 | (let ((from-folder mh-current-folder) |
| 289 | (config (current-window-configuration)) | 309 | (config (current-window-configuration)) |
| 290 | (draft (mh-read-draft "extraction" (mh-msg-filename msg) nil))) | 310 | (draft (mh-read-draft "extraction" (mh-msg-filename message) nil))) |
| 291 | (goto-char (point-min)) | 311 | (goto-char (point-min)) |
| 292 | (cond ((re-search-forward mh-rejected-letter-start nil t) | 312 | (cond ((re-search-forward mh-rejected-letter-start nil t) |
| 293 | (skip-chars-forward " \t\n") | 313 | (skip-chars-forward " \t\n") |
| @@ -298,7 +318,7 @@ See also `mh-send'." | |||
| 298 | (mh-insert-header-separator) | 318 | (mh-insert-header-separator) |
| 299 | (goto-char (point-min)) | 319 | (goto-char (point-min)) |
| 300 | (save-buffer) | 320 | (save-buffer) |
| 301 | (mh-compose-and-send-mail draft "" from-folder msg | 321 | (mh-compose-and-send-mail draft "" from-folder message |
| 302 | (mh-get-header-field "To:") | 322 | (mh-get-header-field "To:") |
| 303 | (mh-get-header-field "From:") | 323 | (mh-get-header-field "From:") |
| 304 | (mh-get-header-field "Cc:") | 324 | (mh-get-header-field "Cc:") |
| @@ -307,14 +327,20 @@ See also `mh-send'." | |||
| 307 | 327 | ||
| 308 | ;;;###mh-autoload | 328 | ;;;###mh-autoload |
| 309 | (defun mh-forward (to cc &optional range) | 329 | (defun mh-forward (to cc &optional range) |
| 310 | "Forward messages to the recipients TO and CC. | 330 | "Forward message(s). |
| 311 | Use optional RANGE argument to specify a message or sequence to forward. | ||
| 312 | Default is the displayed message. | ||
| 313 | 331 | ||
| 314 | Check the documentation of `mh-interactive-range' to see how RANGE is read in | 332 | You are prompted for the TO and CC recipients. You are given a draft to edit |
| 315 | interactive use. | 333 | that looks like it would if you had run the MH command \"forw\". You are given |
| 334 | a chance to add some text. | ||
| 316 | 335 | ||
| 317 | See also `mh-send'." | 336 | You can forward several messages by using a RANGE. All of the messages in the |
| 337 | range are inserted into your draft. Check the documentation of | ||
| 338 | `mh-interactive-range' to see how RANGE is read in interactive use. | ||
| 339 | |||
| 340 | The default message is the current message. | ||
| 341 | |||
| 342 | See also `mh-compose-forward-as-mime-flag', `mh-forward-subject-format', | ||
| 343 | and `mh-send'." | ||
| 318 | (interactive (list (mh-interactive-read-address "To: ") | 344 | (interactive (list (mh-interactive-read-address "To: ") |
| 319 | (mh-interactive-read-address "Cc: ") | 345 | (mh-interactive-read-address "Cc: ") |
| 320 | (mh-interactive-range "Forward"))) | 346 | (mh-interactive-range "Forward"))) |
| @@ -398,33 +424,30 @@ Original message has headers FROM and SUBJECT." | |||
| 398 | (setq from (substring from (1+ comment) (1- (length from))))))) | 424 | (setq from (substring from (1+ comment) (1- (length from))))))) |
| 399 | (format mh-forward-subject-format from subject)) | 425 | (format mh-forward-subject-format from subject)) |
| 400 | 426 | ||
| 401 | ;;;###autoload | 427 | ;;;###mh-autoload |
| 402 | (defun mh-smail-other-window () | 428 | (defun mh-redistribute (to cc &optional message) |
| 403 | "Compose and send mail in other window with the MH mail system. | 429 | "Redistribute a message. |
| 404 | This function is an entry point to MH-E, the Emacs interface to the MH mail | ||
| 405 | system. | ||
| 406 | 430 | ||
| 407 | See `mh-send' for more details on composing mail." | 431 | This command is similar in function to forwarding mail, but it does not allow |
| 408 | (interactive) | 432 | you to edit the message, nor does it add your name to the \"From\" header |
| 409 | (mh-find-path) | 433 | field. It appears to the recipient as if the message had come from the |
| 410 | (call-interactively 'mh-send-other-window)) | 434 | original sender. When you run this command, you are prompted for the TO and CC |
| 435 | recipients. The default MESSAGE is the current message. | ||
| 411 | 436 | ||
| 412 | ;;;###mh-autoload | 437 | Also investigate the \\[mh-edit-again] command for another way to redistribute |
| 413 | (defun mh-redistribute (to cc &optional msg) | 438 | messages. |
| 414 | "Redistribute displayed message to recipients TO and CC. | 439 | |
| 415 | Use optional argument MSG to redistribute another message. | 440 | See also `mh-redist-full-contents-flag'." |
| 416 | Depending on how your copy of MH was compiled, you may need to change the | ||
| 417 | setting of the variable `mh-redist-full-contents'. See its documentation." | ||
| 418 | (interactive (list (mh-read-address "Redist-To: ") | 441 | (interactive (list (mh-read-address "Redist-To: ") |
| 419 | (mh-read-address "Redist-Cc: ") | 442 | (mh-read-address "Redist-Cc: ") |
| 420 | (mh-get-msg-num t))) | 443 | (mh-get-msg-num t))) |
| 421 | (or msg | 444 | (or message |
| 422 | (setq msg (mh-get-msg-num t))) | 445 | (setq message (mh-get-msg-num t))) |
| 423 | (save-window-excursion | 446 | (save-window-excursion |
| 424 | (let ((folder mh-current-folder) | 447 | (let ((folder mh-current-folder) |
| 425 | (draft (mh-read-draft "redistribution" | 448 | (draft (mh-read-draft "redistribution" |
| 426 | (if mh-redist-full-contents | 449 | (if mh-redist-full-contents-flag |
| 427 | (mh-msg-filename msg) | 450 | (mh-msg-filename message) |
| 428 | nil) | 451 | nil) |
| 429 | nil))) | 452 | nil))) |
| 430 | (mh-goto-header-end 0) | 453 | (mh-goto-header-end 0) |
| @@ -438,17 +461,18 @@ setting of the variable `mh-redist-full-contents'. See its documentation." | |||
| 438 | (message "Redistributing...") | 461 | (message "Redistributing...") |
| 439 | (let ((env "mhdist=1")) | 462 | (let ((env "mhdist=1")) |
| 440 | ;; Setup environment... | 463 | ;; Setup environment... |
| 441 | (setq env (concat env " mhaltmsg=" (if mh-redist-full-contents | 464 | (setq env (concat env " mhaltmsg=" |
| 442 | buffer-file-name | 465 | (if mh-redist-full-contents-flag |
| 443 | (mh-msg-filename msg folder)))) | 466 | buffer-file-name |
| 444 | (unless mh-redist-full-contents | 467 | (mh-msg-filename message folder)))) |
| 468 | (unless mh-redist-full-contents-flag | ||
| 445 | (setq env (concat env " mhannotate=1"))) | 469 | (setq env (concat env " mhannotate=1"))) |
| 446 | ;; Redistribute... | 470 | ;; Redistribute... |
| 447 | (if mh-redist-background | 471 | (if mh-redist-background |
| 448 | (mh-exec-cmd-env-daemon env mh-send-prog nil buffer-file-name) | 472 | (mh-exec-cmd-env-daemon env mh-send-prog nil buffer-file-name) |
| 449 | (mh-exec-cmd-error env mh-send-prog "-push" buffer-file-name)) | 473 | (mh-exec-cmd-error env mh-send-prog "-push" buffer-file-name)) |
| 450 | ;; Annotate... | 474 | ;; Annotate... |
| 451 | (mh-annotate-msg msg folder mh-note-dist | 475 | (mh-annotate-msg message folder mh-note-dist |
| 452 | "-component" "Resent:" | 476 | "-component" "Resent:" |
| 453 | "-text" (format "\"%s %s\"" to cc))) | 477 | "-text" (format "\"%s %s\"" to cc))) |
| 454 | (kill-buffer draft) | 478 | (kill-buffer draft) |
| @@ -481,21 +505,48 @@ Optional argument BUFFER can be used to specify the buffer." | |||
| 481 | 505 | ||
| 482 | ;;;###mh-autoload | 506 | ;;;###mh-autoload |
| 483 | (defun mh-reply (message &optional reply-to includep) | 507 | (defun mh-reply (message &optional reply-to includep) |
| 484 | "Reply to MESSAGE. | 508 | "Reply to a MESSAGE. |
| 485 | Default is the displayed message. | ||
| 486 | If the optional argument REPLY-TO is not given, prompts for type of addresses | ||
| 487 | to reply to: | ||
| 488 | from sender only, | ||
| 489 | to sender and primary recipients, | ||
| 490 | cc/all sender and all recipients. | ||
| 491 | If optional prefix argument INCLUDEP provided, then include the message | ||
| 492 | in the reply using filter `mhl.reply' in your MH directory. | ||
| 493 | If the file named by `mh-repl-formfile' exists, it is used as a skeleton for | ||
| 494 | the reply. If REPLY-TO is cc or all and you're using either the nmh or GNU | ||
| 495 | mailutils variants and the file names by `mh-repl-group-formfile' exists, it | ||
| 496 | is used instead. | ||
| 497 | 509 | ||
| 498 | See also `mh-send'." | 510 | When you reply to a message, you are first prompted with \"Reply to whom?\" |
| 511 | \(unless the optional argument REPLY-TO is provided). You have several choices | ||
| 512 | here. | ||
| 513 | |||
| 514 | Response Reply Goes To | ||
| 515 | |||
| 516 | from The person who sent the message. This is the default, | ||
| 517 | so <RET> is sufficient. | ||
| 518 | |||
| 519 | to Replies to the sender, plus all recipients in the | ||
| 520 | \"To:\" header field. | ||
| 521 | |||
| 522 | all | ||
| 523 | cc Forms a reply to the sender, plus all recipients. | ||
| 524 | |||
| 525 | Depending on your answer, \"repl\" is given a different argument to form your | ||
| 526 | reply. Specifically, a choice of \"from\" or none at all runs \"repl -nocc | ||
| 527 | all\", and a choice of \"to\" runs \"repl -cc to\". Finally, either \"cc\" or | ||
| 528 | \"all\" runs \"repl -cc all -nocc me\". | ||
| 529 | |||
| 530 | Two windows are then created. One window contains the message to which you are | ||
| 531 | replying in an MH-Show buffer. Your draft, in MH-Letter mode | ||
| 532 | \(see `mh-letter-mode'), is in the other window. | ||
| 533 | |||
| 534 | If you supply a prefix argument INCLUDEP, the message you are replying to is | ||
| 535 | inserted in your reply after having first been run through \"mhl\" with the | ||
| 536 | format file \"mhl.reply\". | ||
| 537 | |||
| 538 | Alternatively, you can customize the option `mh-yank-behavior' and choose one | ||
| 539 | of its \"Automatically\" variants to do the same thing. If you do so, the | ||
| 540 | prefix argument has no effect. | ||
| 541 | |||
| 542 | Another way to include the message automatically in your draft is to use | ||
| 543 | \"repl: -filter repl.filter\" in your MH profile. | ||
| 544 | |||
| 545 | If you wish to customize the header or other parts of the reply draft, please | ||
| 546 | see \"repl\" and \"mh-format\". | ||
| 547 | |||
| 548 | See also `mh-reply-show-message-flag', `mh-reply-default-reply-to', and | ||
| 549 | `mh-send'." | ||
| 499 | (interactive (list | 550 | (interactive (list |
| 500 | (mh-get-msg-num t) | 551 | (mh-get-msg-num t) |
| 501 | (let ((minibuffer-help-form | 552 | (let ((minibuffer-help-form |
| @@ -560,14 +611,19 @@ See also `mh-send'." | |||
| 560 | 611 | ||
| 561 | ;;;###mh-autoload | 612 | ;;;###mh-autoload |
| 562 | (defun mh-send (to cc subject) | 613 | (defun mh-send (to cc subject) |
| 563 | "Compose and send a letter. | 614 | "Compose a message. |
| 564 | Do not call this function from outside MH-E; use \\[mh-smail] instead. | 615 | |
| 565 | 616 | Your letter appears in an Emacs buffer whose mode is MH-Letter (see | |
| 566 | The file named by `mh-comp-formfile' will be used as the form. | 617 | `mh-letter-mode'). |
| 567 | The letter is composed in `mh-letter-mode'; see its documentation for more | 618 | |
| 568 | details. | 619 | The arguments TO, CC, and SUBJECT can be used to prefill the draft fields or |
| 569 | If `mh-compose-letter-function' is defined, it is called on the draft and | 620 | suppress the prompts if `mh-compose-prompt-flag' is on. They are also passed |
| 570 | passed three arguments: TO, CC, and SUBJECT." | 621 | to the function set in the option `mh-compose-letter-function'. |
| 622 | |||
| 623 | See also `mh-insert-x-mailer-flag' and `mh-letter-mode-hook'. | ||
| 624 | |||
| 625 | Outside of an MH-Folder buffer (`mh-folder-mode'), you must call either | ||
| 626 | \\[mh-smail] or \\[mh-smail-other-window] to compose a new message." | ||
| 571 | (interactive (list | 627 | (interactive (list |
| 572 | (mh-interactive-read-address "To: ") | 628 | (mh-interactive-read-address "To: ") |
| 573 | (mh-interactive-read-address "Cc: ") | 629 | (mh-interactive-read-address "Cc: ") |
| @@ -578,15 +634,10 @@ passed three arguments: TO, CC, and SUBJECT." | |||
| 578 | 634 | ||
| 579 | ;;;###mh-autoload | 635 | ;;;###mh-autoload |
| 580 | (defun mh-send-other-window (to cc subject) | 636 | (defun mh-send-other-window (to cc subject) |
| 581 | "Compose and send a letter in another window. | 637 | "Compose a message in another window. |
| 582 | Do not call this function from outside MH-E; use \\[mh-smail-other-window] | 638 | |
| 583 | instead. | 639 | See `mh-send' for more information and a description of how the TO, CC, and |
| 584 | 640 | SUBJECT arguments are used." | |
| 585 | The file named by `mh-comp-formfile' will be used as the form. | ||
| 586 | The letter is composed in `mh-letter-mode'; see its documentation for more | ||
| 587 | details. | ||
| 588 | If `mh-compose-letter-function' is defined, it is called on the draft and | ||
| 589 | passed three arguments: TO, CC, and SUBJECT." | ||
| 590 | (interactive (list | 641 | (interactive (list |
| 591 | (mh-interactive-read-address "To: ") | 642 | (mh-interactive-read-address "To: ") |
| 592 | (mh-interactive-read-address "Cc: ") | 643 | (mh-interactive-read-address "Cc: ") |
| @@ -860,7 +911,7 @@ well.") | |||
| 860 | (defun mh-fill-paragraph-function (arg) | 911 | (defun mh-fill-paragraph-function (arg) |
| 861 | "Fill paragraph at or after point. | 912 | "Fill paragraph at or after point. |
| 862 | Prefix ARG means justify as well. This function enables `fill-paragraph' to | 913 | Prefix ARG means justify as well. This function enables `fill-paragraph' to |
| 863 | work better in MH-Letter mode." | 914 | work better in MH-Letter mode (see `mh-letter-mode')." |
| 864 | (interactive "P") | 915 | (interactive "P") |
| 865 | (let ((fill-paragraph-function) (fill-prefix)) | 916 | (let ((fill-paragraph-function) (fill-prefix)) |
| 866 | (if (mh-in-header-p) | 917 | (if (mh-in-header-p) |
diff --git a/lisp/mh-e/mh-customize.el b/lisp/mh-e/mh-customize.el index 2f9e863f401..f9997e373da 100644 --- a/lisp/mh-e/mh-customize.el +++ b/lisp/mh-e/mh-customize.el | |||
| @@ -1039,13 +1039,26 @@ assumed to be in the `mh-progs' directory. You may link another program to | |||
| 1039 | ;;; Sending Mail (:group 'mh-sending-mail) | 1039 | ;;; Sending Mail (:group 'mh-sending-mail) |
| 1040 | 1040 | ||
| 1041 | (defcustom mh-compose-forward-as-mime-flag t | 1041 | (defcustom mh-compose-forward-as-mime-flag t |
| 1042 | "Non-nil means that messages are forwarded as a MIME part." | 1042 | "*Non-nil means that messages are forwarded as attachments. |
| 1043 | |||
| 1044 | By default, this option is on which means that the forwarded messages are | ||
| 1045 | included as attachments. If you would prefer to forward your messages verbatim | ||
| 1046 | \(as text, inline), then turn off this option. Forwarding messages verbatim | ||
| 1047 | works well for short, textual messages, but your recipient won't be able to | ||
| 1048 | view any non-textual attachments that were in the forwarded message. Be aware | ||
| 1049 | that if you have \"forw: -mime\" in your MH profile, then forwarded messages | ||
| 1050 | will always be included as attachments regardless of the settings of this | ||
| 1051 | option." | ||
| 1043 | :type 'boolean | 1052 | :type 'boolean |
| 1044 | :group 'mh-sending-mail) | 1053 | :group 'mh-sending-mail) |
| 1045 | 1054 | ||
| 1046 | (defcustom mh-compose-letter-function nil | 1055 | (defcustom mh-compose-letter-function nil |
| 1047 | "Invoked when setting up a letter draft. | 1056 | "Invoked when starting a new draft. |
| 1048 | It is passed three arguments: TO recipients, SUBJECT, and CC recipients." | 1057 | |
| 1058 | However, it is the last function called before you edit your message. The | ||
| 1059 | consequence of this is that you can write a function to write and send the | ||
| 1060 | message for you. This function is passed three arguments: the contents of the | ||
| 1061 | TO, SUBJECT, and CC header fields." | ||
| 1049 | :type '(choice (const nil) function) | 1062 | :type '(choice (const nil) function) |
| 1050 | :group 'mh-sending-mail) | 1063 | :group 'mh-sending-mail) |
| 1051 | 1064 | ||
| @@ -1055,36 +1068,56 @@ It is passed three arguments: TO recipients, SUBJECT, and CC recipients." | |||
| 1055 | :group 'mh-sending-mail) | 1068 | :group 'mh-sending-mail) |
| 1056 | 1069 | ||
| 1057 | (defcustom mh-forward-subject-format "%s: %s" | 1070 | (defcustom mh-forward-subject-format "%s: %s" |
| 1058 | "*Format to generate the Subject: line contents for a forwarded message. | 1071 | "*Format string for forwarded message subject. |
| 1059 | The two string arguments to the format are the sender of the original | 1072 | |
| 1060 | message and the original subject line." | 1073 | This option is a string which includes two escapes (\"%s\"). The first \"%s\" |
| 1074 | is replaced with the sender of the original message, and the second one is | ||
| 1075 | replaced with the original \"Subject:\"." | ||
| 1061 | :type 'string | 1076 | :type 'string |
| 1062 | :group 'mh-sending-mail) | 1077 | :group 'mh-sending-mail) |
| 1063 | 1078 | ||
| 1064 | (defcustom mh-insert-x-mailer-flag t | 1079 | (defcustom mh-insert-x-mailer-flag t |
| 1065 | "*Non-nil means append an X-Mailer field to the header." | 1080 | "*Non-nil means append an \"X-Mailer:\" header field to the header. |
| 1081 | |||
| 1082 | This header field includes the version of MH-E and Emacs that you are using. | ||
| 1083 | If you don't want to participate in our marketing, you can turn this option | ||
| 1084 | off." | ||
| 1085 | :type 'boolean | ||
| 1086 | :group 'mh-sending-mail) | ||
| 1087 | |||
| 1088 | (defcustom mh-redist-full-contents-flag nil | ||
| 1089 | "*Non-nil means the \"dist\" command needs entire letter for redistribution. | ||
| 1090 | |||
| 1091 | This option must be turned on if \"dist\" requires the whole letter for | ||
| 1092 | redistribution, which is the case if \"send\" is compiled with the BERK option | ||
| 1093 | \(which many people abhor). If you find that MH will not allow you to | ||
| 1094 | redistribute a message that has been redistributed before, turn off this | ||
| 1095 | option." | ||
| 1066 | :type 'boolean | 1096 | :type 'boolean |
| 1067 | :group 'mh-sending-mail) | 1097 | :group 'mh-sending-mail) |
| 1068 | 1098 | ||
| 1069 | (defcustom mh-reply-default-reply-to nil | 1099 | (defcustom mh-reply-default-reply-to nil |
| 1070 | "*Sets the person or persons to whom a reply will be sent. | 1100 | "*Sets the person or persons to whom a reply will be sent. |
| 1071 | If nil, prompt for recipient. If non-nil, then \\<mh-folder-mode-map>`\\[mh-reply]' will use this | 1101 | |
| 1072 | value and it should be one of \"from\", \"to\", \"cc\", or \"all\". | 1102 | This option is set to \"Prompt\" by default so that you are prompted for the |
| 1073 | The values \"cc\" and \"all\" do the same thing." | 1103 | recipient of a reply. If you find that most of the time that you specify |
| 1104 | \"cc\" when you reply to a message, set this option to \"cc\". Other choices | ||
| 1105 | include \"from\", \"to\", or \"all\". You can always edit the recipients in | ||
| 1106 | the draft." | ||
| 1074 | :type '(choice (const :tag "Prompt" nil) | 1107 | :type '(choice (const :tag "Prompt" nil) |
| 1075 | (const "from") (const "to") | 1108 | (const "from") |
| 1076 | (const "cc") (const "all")) | 1109 | (const "to") |
| 1110 | (const "cc") | ||
| 1111 | (const "all")) | ||
| 1077 | :group 'mh-sending-mail) | 1112 | :group 'mh-sending-mail) |
| 1078 | 1113 | ||
| 1079 | (defcustom mh-reply-show-message-flag t | 1114 | (defcustom mh-reply-show-message-flag t |
| 1080 | "*Non-nil means the show buffer is displayed using \\<mh-letter-mode-map>\\[mh-reply]. | 1115 | "*Non-nil means the MH-Show buffer is displayed when replying. |
| 1081 | 1116 | ||
| 1082 | The setting of this variable determines whether the MH `show-buffer' is | 1117 | If you include the message automatically, you can hide the MH-Show |
| 1083 | displayed with the current message when using `mh-reply' without a prefix | 1118 | buffer by turning off this option. |
| 1084 | argument. Set it to nil if you already include the message automatically | 1119 | |
| 1085 | in your draft using | 1120 | See also `mh-reply'." |
| 1086 | repl: -filter repl.filter | ||
| 1087 | in your ~/.mh_profile file." | ||
| 1088 | :type 'boolean | 1121 | :type 'boolean |
| 1089 | :group 'mh-sending-mail) | 1122 | :group 'mh-sending-mail) |
| 1090 | 1123 | ||
| @@ -2162,7 +2195,7 @@ insert the signature with `mh-signature-file-name'." | |||
| 2162 | :group 'mh-letter) | 2195 | :group 'mh-letter) |
| 2163 | 2196 | ||
| 2164 | (defcustom mh-letter-mode-hook nil | 2197 | (defcustom mh-letter-mode-hook nil |
| 2165 | "Invoked in `mh-letter-mode' on a new letter." | 2198 | "Invoked by `mh-letter-mode' on a new letter." |
| 2166 | :type 'hook | 2199 | :type 'hook |
| 2167 | :group 'mh-hooks | 2200 | :group 'mh-hooks |
| 2168 | :group 'mh-sending-mail) | 2201 | :group 'mh-sending-mail) |