From: Kenichi Handa Date: Wed, 20 Feb 2008 04:45:35 +0000 (+0000) Subject: (latin1-display): Don't use X-Git-Tag: emacs-pretest-23.0.90~7847 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=3e7447da339a62a18ebb329585c66d4c62180f4a;p=emacs.git (latin1-display): Don't use ucs-mule-8859-to-mule-unicode. Fix the way of resettting standard-display-table. (latin1-display-identities): Adjusted for the change of what is returned by (get-language-info charset 'charset). --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 0dcb32661f5..ddf4553c13c 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,14 @@ +2008-02-20 Kenichi Handa + + * international/latin1-disp.el (latin1-display): Don't use + ucs-mule-8859-to-mule-unicode. Fix the way of resettting + standard-display-table. + (latin1-display-identities): Adjusted for the change of what is + returned by (get-language-info charset 'charset). + + * international/mule-util.el (char-displayable-p): Fix for Latin-1 + characters and terminal case. + 2008-02-19 Ken Manheimer Minor Adaptions by Nick Roberts for Emacs. diff --git a/lisp/international/latin1-disp.el b/lisp/international/latin1-disp.el index 4263ab6a04f..26e1a699e45 100644 --- a/lisp/international/latin1-disp.el +++ b/lisp/international/latin1-disp.el @@ -101,24 +101,12 @@ use either \\[customize] or the function `latin1-display'." See option `latin1-display' for the method. The members of the list must be in `latin1-display-sets'. With no arguments, reset the display for all of `latin1-display-sets'. See also -`latin1-display-setup'. As well as iso-8859 characters, this treats -some characters in the `mule-unicode-...' charsets if you don't have -a Unicode font with which to display them." +`latin1-display-setup'." (if sets (progn (mapc #'latin1-display-setup sets) (unless (char-displayable-p (make-char 'mule-unicode-0100-24ff 32 33)) - ;; It doesn't look as though we have a Unicode font. - (map-char-table - (lambda (c uc) - (when (and (characterp c) - (characterp uc) - (not (aref standard-display-table uc))) - (aset standard-display-table uc - (or (aref standard-display-table c) - (vector c))))) - ucs-mule-8859-to-mule-unicode) ;; Extra stuff for windows-1252, in particular. (mapc (lambda (l) @@ -138,12 +126,8 @@ a Unicode font with which to display them." ))) (setq latin1-display t)) (mapc #'latin1-display-reset latin1-display-sets) - (aset standard-display-table - (make-char 'mule-unicode-0100-24ff) nil) - (aset standard-display-table - (make-char 'mule-unicode-2500-33ff) nil) - (aset standard-display-table - (make-char 'mule-unicode-e000-ffff) nil) + (set-char-table-range standard-display-table '(#x0100 #x33FF) nil) + (set-char-table-range standard-display-table '(#xE000 #xFFFF) nil) (setq latin1-display nil) (redraw-display))) @@ -191,9 +175,10 @@ using an ISO8859 character set." (let ((i 32) (set (car (remq 'ascii (get-language-info charset 'charset))))) (while (<= i 127) - (aset standard-display-table - (make-char set i) - (vector (make-char 'latin-iso8859-1 i))) + (let ((ch (decode-char set (+ i 128)))) + (if ch + (aset standard-display-table ch + (vector (make-char 'latin-iso8859-1 i))))) (setq i (1+ i))))) (defun latin1-display-reset (language)