1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-04 11:40:22 +00:00

* descr-text.el (describe-char-categories): New defsubst.

(describe-char): Use it.
This commit is contained in:
Juanma Barranquero 2009-01-19 15:48:15 +00:00
parent 803ee7b9b1
commit d703f9385e
2 changed files with 23 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2009-01-19 Juanma Barranquero <lekktu@gmail.com>
* descr-text.el (describe-char-categories): New defsubst.
(describe-char): Use it.
2009-01-19 Michael Albinus <michael.albinus@gmx.de>
* net/tramp.el (tramp-ipv6-regexp): The regexp shall cover also

View File

@ -353,6 +353,21 @@ This function is semi-obsolete. Use `get-char-code-property'."
(defsubst describe-char-padded-string (ch)
(compose-string (string ch) 0 1 (format "\t%c\t" ch)))
;; Return a nicely formated list of categories; extended category
;; description is added to the category name as a tooltip
(defsubst describe-char-categories (category-set)
(let ((mnemonics (category-set-mnemonics category-set)))
(unless (eq mnemonics "")
(list (mapconcat
#'(lambda (x)
(let* ((c (category-docstring x))
(doc (if (string-match "\\`\\(.*?\\)\n\\(.*\\)\\'" c)
(propertize (match-string 1 c)
'help-echo (match-string 2 c))
c)))
(format "%c:%s" x doc)))
mnemonics ", ")))))
;;;###autoload
(defun describe-char (pos)
"Describe the character after POS (interactively, the character after point).
@ -430,11 +445,9 @@ as well as widgets, buttons, overlays, and text properties."
(buffer-string))))
("category"
,@(let ((category-set (char-category-set char)))
(if (not category-set)
'("-- none --")
(mapcar #'(lambda (x) (format "%c:%s"
x (category-docstring x)))
(category-set-mnemonics category-set)))))
(if category-set
(describe-char-categories category-set)
'("-- none --"))))
("to input"
,@(let ((key-list (and (eq input-method-function
'quail-input-method)