changeset 91328:f64f6ef4cdfe

(describe-char-display): Convert a GLYPH-CODE to a hexadigit string. (describe-char): Adjusted for the above change.
author Kenichi Handa <handa@m17n.org>
date Wed, 09 Jan 2008 01:31:20 +0000
parents 606f2d163a64
children 34a927335bd4
files lisp/descr-text.el
diffstat 1 files changed, 13 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/descr-text.el	Wed Jan 09 01:21:15 2008 +0000
+++ b/lisp/descr-text.el	Wed Jan 09 01:31:20 2008 +0000
@@ -330,11 +330,18 @@
 
 ;; Return information about how CHAR is displayed at the buffer
 ;; position POS.  If the selected frame is on a graphic display,
-;; return a cons (FONTNAME . GLYPH-CODE).  Otherwise, return a string
-;; describing the terminal codes for the character.
+;; return a cons (FONTNAME . GLYPH-CODE) where GLYPH-CODE is a
+;; hexadigit string representing the glyph-ID.  Otherwise, return a
+;; string describing the terminal codes for the character.
 (defun describe-char-display (pos char)
   (if (display-graphic-p (selected-frame))
-      (internal-char-font pos char)
+      (let ((char-font-info (internal-char-font pos char)))
+	(if (integerp (cdr char-font-info))
+	    (setcdr char-font-info (format "%02X" (cdr char-font-info)))
+	  (setcdr char-font-info
+		  (format "%04X%04X"
+			  (cadr char-font-info) (cddr char-font-info))))
+	char-font-info)
     (let* ((coding (terminal-coding-system))
 	   (encoded (encode-coding-char char coding)))
       (if encoded
@@ -482,7 +489,7 @@
 		      (if display
 			  (concat
 			   "by this font (glyph code)\n"
-			   (format "     %s (#x%02X)"
+			   (format "     %s (#x%s)"
 				   (car display) (cdr display)))
 			"no font available")
 		    (if display
@@ -554,7 +561,7 @@
 		  (insert (glyph-char (car (aref disp-vector i))) ?:
 			  (propertize " " 'display '(space :align-to 5))
 			  (if (cdr (aref disp-vector i))
-			      (format "%s (#x%02X)" (cadr (aref disp-vector i))
+			      (format "%s (#x%s)" (cadr (aref disp-vector i))
 				      (cddr (aref disp-vector i)))
 			    "-- no font --")
 			  "\n")
@@ -610,7 +617,7 @@
 			(insert "\n " (car elt) ?:
 				(propertize " " 'display '(space :align-to 5))
 				(if (cdr elt)
-				    (format "%s (#x%02X)" (cadr elt) (cddr elt))
+				    (format "%s (#x%s)" (cadr elt) (cddr elt))
 				  "-- no font --")))))
 	      (insert "these terminal codes:")
 	      (dolist (elt component-chars)