emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: address@hidden: Locale Dependent Downcasing in smtpmail]


From: Volkan YAZICI
Subject: Re: address@hidden: Locale Dependent Downcasing in smtpmail]
Date: Mon, 02 Apr 2007 20:31:14 +0300
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.96 (gnu/linux)

Kenichi Handa <address@hidden> writes:
> In article <address@hidden>, Richard Stallman <address@hidden> writes:
> Does the attached change fix the problem?
>
> ---
> Kenichi Handa
> address@hidden
>
> *** smtpmail.el       10 Feb 2007 16:30:14 +0900      1.91
> --- smtpmail.el       02 Apr 2007 15:49:05 +0900      
> ***************
> *** 691,697 ****
>                         (>= (car response-code) 400))
>                     (throw 'done nil)))
>             (dolist (line (cdr (cdr response-code)))
> !             (let ((name (mapcar (lambda (s) (intern (downcase s)))
>                                   (split-string (substring line 4) "[ ]"))))
>                 (and (eq (length name) 1)
>                      (setq name (car name)))
> --- 691,704 ----
>                         (>= (car response-code) 400))
>                     (throw 'done nil)))
>             (dolist (line (cdr (cdr response-code)))
> !             (let ((name (mapcar (lambda (s)
> !                                   (setq s (downcase s))
> !                                   ;; If `I' is downcased to dotless-i,
> !                                   ;; convert it to `i'.
> !                                   (if (/= (downcase ?I) ?i)
> !                                       (subst-char-in-string
> !                                        (downcase ?I) ?i s t))

Such a fix is quite unfeasible. What do you think to do for other
problematic characters as well? Introduce a new if-else clause for
every one?

I am not faimilar with introducing a new macro policy of emacs team
but it'd probably be useful (handy?) to have something similar to this
macro:

(with-case-table 'ascii
  ;; Any call to DOWNCASE/UPCASE within this (dynamic?) scope will use
  ;; the case conversion table specified in the first argument of the
  ;; WITH-CASE-TABLE macro.
  ...)


Regards.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]