(report-emacs-bug): Store the prompt in
`report-emacs-bug-text-prompt'. Move Configuration/Important settings
information after the user's report.
(report-emacs-bug-hook): Unclutter by deleting the content of
`report-emacs-bug-text-prompt'.
(smtpmail-send-it): Use it to construct new queue filenames (needed
if you send more than one message per second, which is
possible if you use Gnus Agent).
by 1 since we changed make-auto-save-file-name to add one
fewer character to the buffer name.
(mail-recover): Really show point at the right place
in the *Directory* buffer.
(mail-mode-header-syntax-table): Var deleted.
(mail-abbrev-syntax-table): Init to nil, will compute when needed.
(sendmail-pre-abbrev-expand-hook): Only temporarily change
local-abbrev-table and the syntax table.
Compute mail-abbrev-syntax-table if that has not been done.
(mail-recover): Switch to the *mail* buffer right away. Use
buffer-auto-save-file-name instead of calling
make-auto-save-file-name. Call dired-noselect instead of invoking
`ls' directly. Bind coding-system-for-read to emacs-mule-unix
before reading the auto-save file. If the buffer's auto-save file
does not exist, call mail-recover-1 to allow recovery from past
auto-saved drafts.
with-temp-buffer instead of find-file-noselect, and bind
coding-system-for-read to no-conversion when reading the queued
messages. From Simon Josefsson <jas@extundo.com>.
(message-make-date, message-make-message-id): Autoload when needed.
(smtpmail-send-it): Use them to add `Date:' and `Message-Id:'
headers when missing.
* mail/rmail.el (rmail-enable-mime-composing): New. A lightweight
version of rmail-enable-mime.
(rmail-forward): Use it.
* message.el (message-forward-rmail-make-body):
save-window-excursion.
(message-encode-message-body): no error.
(message-setup-1): compose-mail send-actions are different from
message-send-actions.
* message.el (message-forward-subject-author-subject): Don't use
message-news-p, which widens the buffer.
(message-forward-make-body): New function.
(message-forward): Use it.
(message-insinuate-rmail): New.
(message-forward-rmail-make-body): New.
(smtpmail-cred-user, smtpmail-cred-cert, smtpmail-cred-passwd):
Defsubst instead of defmacro.
(smtpmail-intersection): Return value in reverse order.
(smtpmail-open-stream): Use stringp instead of string-to-list.
(smtpmail-open-stream, smtpmail-try-auth-methods): New functions,
separated from smtpmail-via-smtp.
(top level): Autoload starttls, mail-utils and rfc2104.
(smtpmail-smtp-service): Doc fix. :type fix.
(smtpmail-debug-info): Doc fix.
(smtpmail-debug-verb, smtpmail-auth-credentials)
(smtpmail-starttls-credentials, smtpmail-auth-supported): New variables.
(smtpmail-deduce-address-list, smtpmail-send-it): Don't require
mail-utils (it is autoloaded).
(smtpmail-cred-server, smtpmail-cred-port, smtpmail-cred-key)
(smtpmail-cred-user, smtpmail-cred-cert, smtpmail-cred-passwd)
(smtpmail-find-credentials, smtpmail-intersection): New utility funs.
(smtpmail-via-smtp): Support STARTTLS, if binary is installed.
(smtpmail-via-smtp): Support AUTH.
(smtpmail-via-smtp): Use `smtpmail-debug-verb' to control VERB.
(mail-mode): Use define-derived-mode.
Fix ordering of alternatives in adaptive-fill-regexp.
(mail-mode-map): Don't rely on keymap's internal representation.
(mail-do-fcc): Error if header-end is not a marker.
(mail-do-fcc): Add a comment.
(mail-reply-to): Doc fix.
(mail-signature): Make ATPOINT optional.
(mail-yank-original): Use cond instead of nestled if.
(rmail-decode-babyl-format): Use detect-coding-with-priority
instead of detect-coding-region, to favor detection of emacs-mule
encoded Babyl files written by rmailout.el etc. Suggested by
Kenichi Handa <handa@etl.go.jp>.
(rmail-msg-restore-non-pruned-header): Likewise.
If point was in the old pruned header, put it at the top.
(rmail-msg-prune-header): If point was at the top, keep it there.
(rmail-narrow-to-non-pruned-header): New function.
(rmail-retry-failure): Use rmail-narrow-to-non-pruned-header.
rmail-view-buffer.
(rmail-insert-mime-resent-message-function): New
variable.
(rmail-resend): Modify to work in `rmail-view-buffer'; call
`rmail-insert-mime-resent-message-function' if `rmail-enable-mime'
is non-nil.
of mail-fetch-field by rmail-summary-line-decoder.
(rmail-new-summary): Be sure to go to the Rmail buffer. If
rmail-enable-mime is non-nil, set rmail-summary-buffer of
rmail-view-buffer to nil.
(rmail-summary-undelete): If rmail-enable-mime is non-nil, pop to
rmail-view-buffer.
(rmail-summary-scroll-msg-up): Handle rmail-view-buffer, not
rmail-buffer.
(rmail-summary-scroll-msg-down): Likewise.
(rmail-summary-beginning-of-message): Likewise.
(rmail-summary-wipe): Likewise.
(rmail-summary-toggle-header): Use save-window-excursion, not
save-excursion. Update point in rmail-view-buffer, not in
rmail-buffer.
(rmail-summary-reply): Before calling rmail-reply, set buffer to
rmail-view-buffer, not rmail-buffer.
(rmail-search-mime-message-function)
(rmail-search-mime-header-function): New variables.
(rmail-expunge-and-save): Be sure to set-buffer to the Rmail
buffer.
(rmail-quit): Bury `rmail-buffer' after `rmail-view-buffer' is
hidden.
(rmail-get-new-mail): Likewise.
(rmail-toggle-header): Likewise. If rmail-enable-mime is non-nil,
call rmai-show-mime-function.
(rmail-display-labels): If rmail-enable-mime is non-nil, update
mode-line-process of rmail-view-buffer.
(rmail-set-attribute): Be sure to set-buffer to the Rmail buffer.
(rmail-show-message): Be sure to call rmail-auto-file in the Rmail
buffer.
(rmail-next-message): Be sure to set-buffer to the Rmail buffer.
(rmail-next-undeleted-message): Likewise.
(rmail-message-regexp-p): If rmail-enable-mime is non-nil, call
rmail-search-mime-header-function.
(rmail-search-message): New function.
(rmail-search): Call rmail-search-message to check if a message
matches REGEXP, lastly update point after calling
rmail-show-message.
(rmail-undelete-previous-message): Be sure to set-buffer to the
Rmail buffer.
(rmail-expunge-confirmed): Likewise.
(rmail-only-expunge): Likewise.
(rmail-reply): If rmail-enable-mime is non-nil, don't narrow to
header region, refer to rmail-msgref-vector while setting the
current buffer to rmail-buffer temporarily.
(rmail-forward): Be sure to bind forward-buffer to the Rmail
buffer. If rmail-enable-mime is non-nil, call
rmail-insert-mime-forwarded-message-function instead of inserting
forwarded message by itself.
(mail-extr-skip-whitespace-forward, mail-extr-nuke-char-at)
(mail-extr-skip-whitespace-backward, mail-extr-undo-backslash-quoting):
Use `defsubst' rather than a macro to ease debugging.
(mail-extr-last): Remove (use `last' instead).
(mail-extract-address-components): Properly reset the syntax-table
after parsing an address. Use `last' rather than mail-extr-last.
Make sure the end marker stays at the very end.