diff options
author | Karoly Lorentey <lorentey@elte.hu> | 2004-12-23 16:43:51 +0000 |
---|---|---|
committer | Karoly Lorentey <lorentey@elte.hu> | 2004-12-23 16:43:51 +0000 |
commit | 17d51b68fb4e7da4f18eff72c589b7ffc4f9c22c (patch) | |
tree | f490c1ccdbd43077ea77f953bc59ca94c2fe810c /lisp/descr-text.el | |
parent | 4b89585ee70a1f64543a5851f07cf7e2d89c5c62 (diff) | |
parent | 55f4edbcd246d8ea1715687a7aeeb3afe35c0345 (diff) | |
download | emacs-17d51b68fb4e7da4f18eff72c589b7ffc4f9c22c.tar.gz emacs-17d51b68fb4e7da4f18eff72c589b7ffc4f9c22c.tar.bz2 emacs-17d51b68fb4e7da4f18eff72c589b7ffc4f9c22c.zip |
Merged in changes from CVS trunk.
Patches applied:
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-726
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-727
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-728
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-729
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-730
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-731
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-732
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-733
Update from CVS: man/calc.texi: Fix some TeX definitions.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-734
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-735
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-736
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-737
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-738
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-739
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-740
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-741
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-742
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-743
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-744
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-745
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-746
Update from CVS
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-75
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-76
Update from CVS
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-77
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-277
Diffstat (limited to 'lisp/descr-text.el')
-rw-r--r-- | lisp/descr-text.el | 46 |
1 files changed, 16 insertions, 30 deletions
diff --git a/lisp/descr-text.el b/lisp/descr-text.el index 49b9b12154a..726d3e6e5d8 100644 --- a/lisp/descr-text.el +++ b/lisp/descr-text.el @@ -104,24 +104,11 @@ The `category', `face' and `font-lock-face' properties are made into widget buttons that call `describe-text-category' or `describe-face' when pushed." ;; Sort the properties by the size of their value. - (dolist (elt (sort (let ((ret nil) - (key nil) - (val nil) - (len nil)) + (dolist (elt (sort (let (ret) (while properties - (setq key (pop properties) - val (pop properties) - len 0) - (unless (or (memq key '(category face font-lock-face - syntax-table)) - (widgetp val)) - (setq val (pp-to-string val) - len (length val))) - (push (list key val len) ret)) + (push (list (pop properties) (pop properties)) ret)) ret) - (lambda (a b) - (< (nth 2 a) - (nth 2 b))))) + (lambda (a b) (string< (nth 0 a) (nth 0 b))))) (let ((key (nth 0 elt)) (value (nth 1 elt))) (widget-insert (propertize (format " %-20s " key) @@ -131,23 +118,15 @@ into widget buttons that call `describe-text-category' or :notify `(lambda (&rest ignore) (describe-text-category ',value)) (format "%S" value))) - ((memq key '(face font-lock-face)) + ((memq key '(face font-lock-face mouse-face)) (widget-create 'link :notify `(lambda (&rest ignore) (describe-face ',value)) (format "%S" value))) - ((eq key 'syntax-table) - (widget-create 'push-button - :tag "show" - :action (lambda (widget &optional event) - (with-output-to-temp-buffer - "*Pp Eval Output*" - (pp (widget-get widget :value)))) - value)) ((widgetp value) (describe-text-widget value)) (t - (widget-insert value)))) + (describe-text-sexp value)))) (widget-insert "\n"))) ;;; Describe-Text Commands. @@ -552,10 +531,17 @@ as well as widgets, buttons, overlays, and text properties." (dotimes (i (length disp-vector)) (setq char (aref disp-vector i)) (aset disp-vector i - (cons char (describe-char-display pos char)))) + (cons char (describe-char-display + pos (logand char #x7ffff))))) (format "by display table entry [%s] (see below)" - (mapconcat #'(lambda (x) (format "?%c" (car x))) - disp-vector " "))) + (mapconcat + #'(lambda (x) + (if (> (car x) #x7ffff) + (format "?%c<face-id=%s>" + (logand (car x) #x7ffff) + (lsh (car x) -19)) + (format "?%c" (car x)))) + disp-vector " "))) (composition (let ((from (car composition)) (to (nth 1 composition)) @@ -627,7 +613,7 @@ as well as widgets, buttons, overlays, and text properties." (progn (insert "these fonts (glyph codes):\n") (dotimes (i (length disp-vector)) - (insert (car (aref disp-vector i)) ?: + (insert (logand (car (aref disp-vector i)) #x7ffff) ?: (propertize " " 'display '(space :align-to 5)) (if (cdr (aref disp-vector i)) (format "%s (0x%02X)" (cadr (aref disp-vector i)) |