diff options
author | Kenichi Handa <handa@m17n.org> | 2007-12-04 06:05:28 +0000 |
---|---|---|
committer | Kenichi Handa <handa@m17n.org> | 2007-12-04 06:05:28 +0000 |
commit | 3f8b1daa441934eb95e273432531381814cfaf75 (patch) | |
tree | cfe99ba2a408d866d09f358ab683761776c61ebb /lisp/descr-text.el | |
parent | dd63383d476672b6bb1c3525ce3503e67a52d625 (diff) | |
download | emacs-3f8b1daa441934eb95e273432531381814cfaf75.tar.gz |
(describe-char): Handle a composition of the new
format.
Diffstat (limited to 'lisp/descr-text.el')
-rw-r--r-- | lisp/descr-text.el | 58 |
1 files changed, 32 insertions, 26 deletions
diff --git a/lisp/descr-text.el b/lisp/descr-text.el index 18c4144c5f4..1fea494c35b 100644 --- a/lisp/descr-text.el +++ b/lisp/descr-text.el @@ -583,33 +583,39 @@ as well as widgets, buttons, overlays, and text properties." (if (cadr composition) (insert " with the following character(s) \"" (cadr composition) "\""))) - (insert " by the rule:\n\t(" - (mapconcat (lambda (x) - (if (consp x) (format "%S" x) - (if (= x ?\t) - (single-key-description x) - (string ?? x)))) - (nth 2 composition) - " ") - ")") - (insert "\nThe component character(s) are displayed by ") - (if (display-graphic-p (selected-frame)) + (if (and (vectorp (nth 2 composition)) + (vectorp (aref (nth 2 composition) 0))) (progn - (insert "these fonts (glyph codes):") - (dolist (elt component-chars) - (if (/= (car elt) ?\t) - (insert "\n " (car elt) ?: - (propertize " " 'display '(space :align-to 5)) - (if (cdr elt) - (format "%s (#x%02X)" (cadr elt) (cddr elt)) - "-- no font --"))))) - (insert "these terminal codes:") - (dolist (elt component-chars) - (insert "\n " (car elt) ":" - (propertize " " 'display '(space :align-to 4)) - (or (cdr elt) "-- not encodable --")))) - (insert "\nSee the variable `reference-point-alist' for " - "the meaning of the rule.\n")) + (insert " by these glyphs:\n") + (mapc (lambda (x) (insert (format " %S\n" x))) + (nth 2 composition))) + (insert " by the rule:\n\t(" + (mapconcat (lambda (x) + (if (consp x) (format "%S" x) + (if (= x ?\t) + (single-key-description x) + (string ?? x)))) + (nth 2 composition) + " ") + ")") + (insert "\nThe component character(s) are displayed by ") + (if (display-graphic-p (selected-frame)) + (progn + (insert "these fonts (glyph codes):") + (dolist (elt component-chars) + (if (/= (car elt) ?\t) + (insert "\n " (car elt) ?: + (propertize " " 'display '(space :align-to 5)) + (if (cdr elt) + (format "%s (#x%02X)" (cadr elt) (cddr elt)) + "-- no font --"))))) + (insert "these terminal codes:") + (dolist (elt component-chars) + (insert "\n " (car elt) ":" + (propertize " " 'display '(space :align-to 4)) + (or (cdr elt) "-- not encodable --")))) + (insert "\nSee the variable `reference-point-alist' for " + "the meaning of the rule.\n"))) (if (not describe-char-unidata-list) (insert "\nCharacter code properties are not shown: ") |