changeset 97984:672009e514b4

(describe-char): Fix handling of automatic composition.
author Kenichi Handa <handa@m17n.org>
date Fri, 05 Sep 2008 00:50:27 +0000
parents b5a42c692791
children 26069577e76b
files lisp/descr-text.el
diffstat 1 files changed, 9 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/descr-text.el	Fri Sep 05 00:47:23 2008 +0000
+++ b/lisp/descr-text.el	Fri Sep 05 00:50:27 2008 +0000
@@ -601,14 +601,20 @@
 			"\"")))
 	  (if (and (vectorp (nth 2 composition))
 		   (vectorp (aref (nth 2 composition) 0)))
-	      (let ((font (aref (aref (nth 2 composition) 0) 0)))
+	      (let* ((gstring (nth 2 composition))
+		     (font (lgstring-font gstring))
+		     (nglyphs (lgstring-glyph-len gstring))
+		     (i 0)
+		     glyph)
 		(insert " using this font:\n  "
 			(symbol-name (font-get font :type))
 			?:
 			(aref (query-font font) 0)
 			"\nby these glyphs:\n")
-		(mapc (lambda (x) (insert (format "  %S\n" x)))
-		      (nth 2 composition)))
+		(while (and (< i nglyphs)
+			    (setq glyph (lgstring-glyph gstring i)))
+		  (insert (format "  %S\n" glyph))
+		  (setq i (1+ i))))
 	    (insert " by the rule:\n\t(")
 	    (let ((first t))
 	      (mapc (lambda (x)