Emacs MULE can not encode adjacent iso-2022-jp and cn-gb-2312.
* gnus-msg.el (gnus-summary-mail-forward): Use unibyte buffer.
Emacs MULE can not copy some 8bit characters in multibyte buffers.
* mm-decode.el (mm-insert-part): Ditto.
+2000-05-05 00:30:12 Shenghuo ZHU <zsh@cs.rochester.edu>
+
+ * rfc2047.el (rfc2047-encode-region): Insert a space before encoding.
+ Emacs MULE can not encode adjacent iso-2022-jp and cn-gb-2312.
+ * gnus-msg.el (gnus-summary-mail-forward): Use unibyte buffer.
+ Emacs MULE can not copy some 8bit characters in multibyte buffers.
+ * mm-decode.el (mm-insert-part): Ditto.
+
2000-05-04 17:49:04 Shenghuo ZHU <zsh@cs.rochester.edu>
* nndoc.el (nndoc-type-alist): Extend forward regexp.
text)
(save-excursion
(set-buffer gnus-original-article-buffer)
- (setq text (buffer-string)))
+ (mm-with-unibyte-current-buffer
+ (setq text (buffer-string))))
(set-buffer
- (if message-forward-show-mml
- (gnus-get-buffer-create
- (generate-new-buffer-name " *Gnus forward*"))
- (mm-with-unibyte-current-buffer
- ;; create an unibyte buffer
- (gnus-get-buffer-create
- (generate-new-buffer-name " *Gnus forward*")))))
+ (gnus-get-buffer-create
+ (generate-new-buffer-name " *Gnus forward*")))
(erase-buffer)
+ (mm-disable-multibyte)
(insert text)
(goto-char (point-min))
(when (looking-at "From ")
(replace-match "X-From-Line: ") )
- (if message-forward-show-mml
- (mime-to-mml))
+ (when message-forward-show-mml
+ (mm-enable-multibyte)
+ (mime-to-mml))
(message-forward post)))))
(defun gnus-summary-resend-message (address n)
(save-excursion
(if (member (mm-handle-media-supertype handle) '("text" "message"))
(with-temp-buffer
- (insert-buffer-substring (mm-handle-buffer handle))
+ (if (eq (mm-handle-encoding handle) '8bit)
+ ;; Emacs MULE can not handle some 8bit characters in
+ ;; multibyte character!!
+ (let ((text (with-current-buffer
+ (mm-handle-buffer handle)
+ (mm-with-unibyte-current-buffer
+ (buffer-string)))))
+ (mm-with-unibyte-current-buffer
+ (insert text)))
+ (insert-buffer-substring (mm-handle-buffer handle)))
(mm-decode-content-transfer-encoding
(mm-handle-encoding handle)
(mm-handle-media-type handle))
(if (equal (nth 2 word) current)
(setq beg (nth 0 word))
(when current
- (when (prog1 (and (eq beg (nth 1 word)) (nth 2 word))
- (rfc2047-encode beg end current))
- (goto-char beg)
- (insert " ")))
+ (if (and (eq beg (nth 1 word)) (nth 2 word))
+ (progn
+ ;; There might be a bug in Emacs Mule.
+ ;; A space must be inserted before encoding.
+ (goto-char beg)
+ (insert " ")
+ (rfc2047-encode (1+ beg) (1+ end) current))
+ (rfc2047-encode beg end current)))
(setq current (nth 2 word)
beg (nth 0 word)
end (nth 1 word))))