1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-02-07 20:54:32 +00:00

Add to sendmail.el a new command mail-add-attachment.

etc/NEWS: Document the new command and the alias for mail-insert-file.
 lisp/mail/sendmail.el (mml-to-mime, mml-attach-file)
 (mm-default-file-encoding): Remove autoload forms, they are
 replaced with autoload cookies in mml.el and mm-encode.el.
 (mail-add-attachment): New command.
 (mail-mode-map): Add a menu-bar item for mail-add-attachment.
 (mail-mode): Mention mail-insert-file and mail-add-attachment in
 the doc string.
 (mml-to-mime, mml-attach-file, mm-default-file-encoding): Declare.
 lisp/gnus/mm-encode.el (mm-default-file-encoding): Add autoload cookie.
 lisp/gnus/mml.el (mml-to-mime, mml-attach-file): Add autoload cookies.
 doc/emacs/sending.texi (Mail Misc): Document mail-add-attachment.
This commit is contained in:
Eli Zaretskii 2011-09-10 11:26:12 +03:00
commit c3760c17bd
8 changed files with 65 additions and 6 deletions

View File

@ -1,3 +1,7 @@
2011-09-10 Eli Zaretskii <eliz@gnu.org>
* sending.texi (Mail Misc): Document mail-add-attachment.
2011-09-04 Eli Zaretskii <eliz@gnu.org>
* basic.texi (Inserting Text): Add index entries. (Bug#9433)

View File

@ -556,8 +556,8 @@ package, which provides more flexible citation
@cindex Multipurpose Internet Mail Extensions
You can @dfn{attach} a file to an outgoing message by typing
@kbd{C-c C-a} (@code{mml-attach-file}) in the mail buffer. Attaching
is done using the MIME (Multipurpose Internet Mail Extensions)
standard.
is done using the Multipurpose Internet Mail Extensions
(@acronym{MIME}) standard.
The @code{mml-attach-file} command prompts for the name of the file,
and for the attachment's @dfn{content type}, @dfn{description}, and
@ -570,6 +570,13 @@ recipient will see a link to the attachment within the message body,
or @samp{attachment}, which means the link will be separate from the
body.
@findex mail-add-attachment
The @code{mml-attach-file} command is specific to Message mode; in
Mail mode use @kbd{mail-add-attachment} instead. It will prompt only
for the name of the file, and will determine the content type and the
disposition automatically. If you want to include some description of
the attached file, type that in the message body.
The actual contents of the attached file are not inserted into the
mail buffer. Instead, some placeholder text is inserted into the mail
buffer, like this:

View File

@ -156,6 +156,15 @@ If you had that set, then then you need to put
in your ~/.authinfo file instead.
*** sendmail changes
+++
You can now add MIME attachments to outgoing messages with the new
command `mail-add-attachment'.
---
The command `mail-attach-file' was renamed to `mail-insert-file'; the
old name is now an obsolete alias to the new name.
** Emacs server and client changes
+++
*** New option `server-port' specifies the port on which the Emacs

View File

@ -1,3 +1,14 @@
2011-09-10 Eli Zaretskii <eliz@gnu.org>
* mail/sendmail.el (mml-to-mime, mml-attach-file)
(mm-default-file-encoding): Remove autoload forms, they are
replaced with autoload cookies in mml.el and mm-encode.el.
(mail-add-attachment): New command.
(mail-mode-map): Add a menu-bar item for mail-add-attachment.
(mail-mode): Mention mail-insert-file and mail-add-attachment in
the doc string.
(mml-to-mime, mml-attach-file, mm-default-file-encoding): Declare.
2011-09-10 Reuben Thomas <rrt@sc3d.org>
* simple.el (count-words-region): Use buffer if there's no region.

View File

@ -1,3 +1,10 @@
2011-09-10 Eli Zaretskii <eliz@gnu.org>
Add autoload cookies for functions used by sendmail.el.
* mm-encode.el (mm-default-file-encoding): Add autoload cookie.
* mml.el (mml-to-mime, mml-attach-file): Add autoload cookies.
2011-09-09 Katsumi Yamaoka <yamaoka@jpl.org>
* gnus-art.el (article-date-ut): Work properly even when there are

View File

@ -97,6 +97,7 @@ This variable should never be set directly, but bound before a call to
(insert "Content-Type: multipart/mixed; boundary=\"" boundary "\"\n")
boundary))
;;;###autoload
(defun mm-default-file-encoding (file)
"Return a default encoding for FILE."
(if (not (string-match "\\.[^.]+$" file))

View File

@ -897,6 +897,7 @@ If HANDLES is non-nil, use it instead reparsing the buffer."
(autoload 'message-encode-message-body "message")
(declare-function message-narrow-to-headers-or-head "message" ())
;;;###autoload
(defun mml-to-mime ()
"Translate the current buffer from MML to MIME."
;; `message-encode-message-body' will insert an encoded Content-Description
@ -1294,6 +1295,7 @@ to specify options."
:version "22.1" ;; Gnus 5.10.9
:group 'message)
;;;###autoload
(defun mml-attach-file (file &optional type description disposition)
"Attach a file to the outgoing MIME message.
The file is not inserted or encoded until you send the message with

View File

@ -31,9 +31,6 @@
(require 'rfc2047)
(autoload 'mml-to-mime "mml"
"Translate the current buffer from MML to MIME.")
(defgroup sendmail nil
"Mail sending commands for Emacs."
:prefix "mail-"
@ -310,6 +307,9 @@ The default value matches citations like `foo-bar>' plus whitespace."
(define-key map [menu-bar mail]
(cons "Mail" (make-sparse-keymap "Mail")))
(define-key map [menu-bar mail attachment]
'("Attach File" . mail-add-attachment))
(define-key map [menu-bar mail fill]
'("Fill Citation" . mail-fill-yanked-message))
@ -700,6 +700,8 @@ Here are commands that move to a header field (and create it if there isn't):
\\[mail-signature] mail-signature (insert `mail-signature-file' file).
\\[mail-yank-original] mail-yank-original (insert current message, in Rmail).
\\[mail-fill-yanked-message] mail-fill-yanked-message (fill what was yanked).
\\[mail-insert-file] insert a text file into the message.
\\[mail-add-attachment] attach to the message a file as binary attachment.
Turning on Mail mode runs the normal hooks `text-mode-hook' and
`mail-mode-hook' (in that order)."
(make-local-variable 'mail-reply-action)
@ -868,6 +870,7 @@ header when sending a message to a mailing list."
:type '(repeat string)
:group 'sendmail)
(declare-function mml-to-mime "mml" ())
(defun mail-send ()
"Send the message in the current buffer.
@ -1697,7 +1700,7 @@ If the current line has `mail-yank-prefix', insert it on the new line."
(split-line mail-yank-prefix))
(defun mail-attach-file (&optional file)
(defun mail-insert-file (&optional file)
"Insert a file at the end of the buffer, with separator lines around it."
(interactive "fAttach file: ")
(save-excursion
@ -1716,6 +1719,21 @@ If the current line has `mail-yank-prefix', insert it on the new line."
(insert-file-contents file)
(or (bolp) (newline))
(goto-char start))))
(define-obsolete-function-alias 'mail-attach-file 'mail-insert-file "24.1")
(declare-function mml-attach-file "mml"
(file &optional type description disposition))
(declare-function mm-default-file-encoding "mm-encode" (file))
(defun mail-add-attachment (file)
"Add FILE as a MIME attachment to the end of the mail message being composed."
(interactive "fAttach file: ")
(mml-attach-file file
(or (mm-default-file-encoding file)
"application/octet-stream") nil)
(setq mail-encode-mml t))
;; Put these commands last, to reduce chance of lossage from quitting
;; in middle of loading the file.