vm team mailing list archive
-
vm team
-
Mailing list archive
-
Message #00667
Re: VM-BUG: extra spaces in summary mode
On Tue, 16 Mar 2010, Ulrich Mueller wrote:
>>>>>> On Tue, 16 Mar 2010, Robert Marshall wrote:
>
>> started with emacs -q I still see the extra spaces
>
>> Subject: RE: Club Franco Brit
>> annique de Macclesfi
>> eld Dîner Annuel
>
> I wonder why the sender's MUA would break the subject in the middle of
> words? Looks like broken behaviour.
>
> However, if I read RFC 2047 correctly, the subject above still
> complies to the standard, and the whitespace should be ignored:
>
> | When displaying a particular header field that contains multiple
> | 'encoded-word's, any 'linear-white-space' that separates a pair of
> | adjacent 'encoded-word's is ignored.
>
>> giving
>
>> "RE: Club F ranco Brit annique de Macclesfi eld Dîne r Annuel"
>
> Does attached patch fix the problem for you?
>
Works for me! Thank you
Can't see any header giving the mail client, I assume webmail to hotmail?
Do you want me to ask what she used?
Robert
> (BTW, there is quite some code duplication between functions
> vm-decode-mime-message-headers and vm-decode-mime-encoded-words.
> I wonder if we should do something about it.)
>
> Ulrich
>
> --- vm-mime.el~
> +++ vm-mime.el
> @@ -831,7 +831,8 @@
> (defun vm-decode-mime-encoded-words ()
> (let ((case-fold-search t)
> (buffer-read-only nil)
> - charset need-conversion encoding match-start match-end start end)
> + charset need-conversion encoding match-start match-end start end
> + previous-end)
> (save-excursion
> (goto-char (point-min))
> (while (re-search-forward vm-mime-encoded-word-regexp nil t)
> @@ -848,6 +849,11 @@
> (not (setq need-conversion
> (vm-mime-can-convert-charset charset))))
> nil
> + ;; suppress whitespace between encoded words.
> + (and previous-end
> + (string-match "\\`[ \t\n]*\\'"
> + (buffer-substring previous-end match-start))
> + (setq match-start previous-end))
> (delete-region end match-end)
> (condition-case data
> (cond ((string-match "B" encoding)
> @@ -865,6 +871,7 @@
> charset start end)))
> (vm-mime-charset-decode-region charset start end)
> (goto-char end)
> + (setq previous-end end)
> (delete-region match-start start))))))
>
> (defun vm-decode-mime-encoded-words-in-string (string)
References