[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
etc/TODO item: describe-face sample text
From: |
Yoni Rabkin Katzenell |
Subject: |
etc/TODO item: describe-face sample text |
Date: |
Mon, 30 Oct 2006 17:33:21 +0200 |
User-agent: |
Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.90 (gnu/linux) |
Hello,
I sent this patch on 2006-10-15. Drew Adams commented on it but no-one
else has since, so I'm re-sending it.
I hope that I'm not being too hasty in re-sending, because of the
pretest there must be lot to do. But I'm guessing that since this is
listed as a TODO item, it would be OK.
If it would be better that I resend this after 22 is out, please say so.
The following is my original email:
emacs/etc/TODO says: "describe-face should show an example of text in
the face."
The attached patch against `faces.el' adds the word "sample", rendered
in the appropriate face, to the top row of the `describe-face' pop-up
buffer.
An example result can be seen in this screenshot:
http://yrk.nfshost.com/images/faces-sample.png
Index: faces.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/faces.el,v
retrieving revision 1.354
diff -u -r1.354 faces.el
--- faces.el 14 Sep 2006 23:54:44 -0000 1.354
+++ faces.el 16 Oct 2006 19:52:28 -0000
@@ -32,6 +32,9 @@
;; Warning suppression -- can't require x-win in batch:
(autoload 'xw-defined-colors "x-win"))
+(defvar faces-sample-overlay nil
+ "Overlay for showing an example of a face.")
+
(defvar help-xref-stack-item)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -1253,6 +1256,17 @@
(setq faces (cdr faces)))))))
+(defun faces-sample-overlay (face)
+ "Insert sample text with FACE.
+
+If FACE is not a face or nil, use the default face."
+ (let ((f (if (facep face) face 'default))
+ (start (+ (point) 2))) ;; skip face and paren
+ (insert " (sample)")
+ (setq faces-sample-overlay (make-overlay start (1- (point))))
+ (overlay-put faces-sample-overlay 'face f)))
+
+
(defun describe-face (face &optional frame)
"Display the properties of face FACE on FRAME.
Interactively, FACE defaults to the faces of the character after point
@@ -1293,6 +1307,7 @@
(insert " undefined face.\n")
(let ((customize-label "customize this face")
file-name)
+ (faces-sample-overlay f)
(princ (concat " (" customize-label ")\n"))
(insert "Documentation: "
(or (face-documentation f)
- etc/TODO item: describe-face sample text,
Yoni Rabkin Katzenell <=