]> git.eshelyaron.com Git - emacs.git/commitdiff
Tweat how MML specifies the encoding of binary data
authorLars Ingebrigtsen <larsi@gnus.org>
Thu, 6 Aug 2020 14:47:21 +0000 (16:47 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Thu, 6 Aug 2020 14:47:21 +0000 (16:47 +0200)
* lisp/gnus/mml.el (mml-parse-1): Use `data-encoding' to be
slightly less confusing than `content-transfer-encoding'.

* doc/misc/emacs-mime.texi (MML Definition): Document it.

* lisp/gnus/message.el (message-insert-screenshot): Adjust usage.

doc/misc/emacs-mime.texi
lisp/gnus/message.el
lisp/gnus/mml.el

index 974cc10458d59de9dc3ec0669d6752d87ab3da06..9180b4ec205e4b732254d8aa2aa1a1ed5929244f 100644 (file)
@@ -693,8 +693,17 @@ Valid values are @samp{inline} and @samp{attachment}
 
 @item encoding
 Valid values are @samp{7bit}, @samp{8bit}, @samp{quoted-printable} and
-@samp{base64} (@code{Content-Transfer-Encoding}). @xref{Charset
-Translation}.
+@samp{base64}.  @xref{Charset
+Translation}.  This parameter says what
+@code{Content-Transfer-Encoding} to use when sending the part, and is
+normally computed automatically.
+
+@item data-encoding
+This parameter says what encoding has been used on the data, and the
+data will be decoded before use.  Valid values are
+@samp{quoted-printable} and @samp{base64}.  This is useful when you
+have a part with binary data (for instance an image) inserted directly
+into the Message buffer inside the @samp{"<#part>...<#/part>"} tags.
 
 @item description
 A description of the part (@code{Content-Description}).
index 6c0f9b5c9ba33ddc5c4111d9d7a8206e08fb5d32..819f3e41d3d5c52a979e8992bd4a121e8cd7b101 100644 (file)
@@ -8709,7 +8709,7 @@ used to take the screenshot."
                   :max-width (truncate (* (frame-pixel-width) 0.8))
                   :max-height (truncate (* (frame-pixel-height) 0.8))
                   :scale 1)
-     (format "<#part type=\"image/png\" disposition=inline content-transfer-encoding=base64 raw=t>\n%s\n<#/part>"
+     (format "<#part type=\"image/png\" disposition=inline data-encoding=base64 raw=t>\n%s\n<#/part>"
             ;; Get a base64 version of the image -- this avoids later
             ;; complications if we're auto-saving the buffer and
             ;; restoring from a file.
index 1d348f3a6f001b722494bedce0e485921cbf40fa..ef8aa6ac019a95251ebbfdeab5328bc055efa001 100644 (file)
@@ -298,12 +298,12 @@ part.  This is for the internal use, you should never modify the value.")
        ;; We have a part that already has a transfer encoding.  Undo
        ;; that so that we don't double-encode later.
        (when (and raw
-                  (cdr (assq 'content-transfer-encoding tag)))
+                  (cdr (assq 'data-encoding tag)))
          (with-temp-buffer
            (set-buffer-multibyte nil)
            (insert contents)
            (mm-decode-content-transfer-encoding
-            (intern (cdr (assq 'content-transfer-encoding tag)))
+            (intern (cdr (assq 'data-encoding tag)))
             (cdr (assq 'type tag)))
            (setq contents (buffer-string))))
        (when (and (not raw) (memq nil charsets))