emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs/lisp ChangeLog descr-text.el


From: Juanma Barranquero
Subject: [Emacs-diffs] emacs/lisp ChangeLog descr-text.el
Date: Mon, 19 Jan 2009 15:48:19 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Juanma Barranquero <lektu>      09/01/19 15:48:18

Modified files:
        lisp           : ChangeLog descr-text.el 

Log message:
        * descr-text.el (describe-char-categories): New defsubst.
          (describe-char): Use it.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/ChangeLog?cvsroot=emacs&r1=1.15129&r2=1.15130
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/descr-text.el?cvsroot=emacs&r1=1.74&r2=1.75

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/lisp/ChangeLog,v
retrieving revision 1.15129
retrieving revision 1.15130
diff -u -b -r1.15129 -r1.15130
--- ChangeLog   19 Jan 2009 06:52:50 -0000      1.15129
+++ ChangeLog   19 Jan 2009 15:48:15 -0000      1.15130
@@ -1,3 +1,8 @@
+2009-01-19  Juanma Barranquero  <address@hidden>
+
+       * descr-text.el (describe-char-categories): New defsubst.
+       (describe-char): Use it.
+
 2009-01-19  Michael Albinus  <address@hidden>
 
        * net/tramp.el (tramp-ipv6-regexp): The regexp shall cover also

Index: descr-text.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/descr-text.el,v
retrieving revision 1.74
retrieving revision 1.75
diff -u -b -r1.74 -r1.75
--- descr-text.el       5 Jan 2009 03:18:52 -0000       1.74
+++ descr-text.el       19 Jan 2009 15:48:18 -0000      1.75
@@ -353,6 +353,21 @@
 (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 @@
                  (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)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]