+2008-02-20 Kenichi Handa <handa@ni.aist.go.jp>
+
+ * 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 <ken.manheimer@gmail.com>
Minor Adaptions by Nick Roberts <nickrob@snap.net.nz> for Emacs.
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)
)))
(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)))
(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)