]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/finder.el (finder--builtins-descriptions): New constant.
authorGlenn Morris <rgm@gnu.org>
Fri, 14 Mar 2014 19:24:04 +0000 (15:24 -0400)
committerGlenn Morris <rgm@gnu.org>
Fri, 14 Mar 2014 19:24:04 +0000 (15:24 -0400)
(finder-compile-keywords): Use finder--builtins-descriptions.

This avoids us getting silly descriptions in finder-inf.el like
   (emacs . [nil nil "abbrev mode commands for Emacs"])

lisp/ChangeLog
lisp/finder.el

index 769b77809bcdd61a1cc87b498838ed279f445604..9b8ec690c71ada355c3586a72350f120b3a6d7b4 100644 (file)
@@ -1,3 +1,8 @@
+2014-03-14  Glenn Morris  <rgm@gnu.org>
+
+       * finder.el (finder--builtins-descriptions): New constant.
+       (finder-compile-keywords): Use finder--builtins-descriptions.
+
 2014-03-14  Dmitry Gutov  <dgutov@yandex.ru>
 
        * simple.el (blink-matching-paren): Describe the new value,
index 85db692f87e24874adf41996ebc3156d55c37d27..a7ddaa333b7c2306e26f74ddbbe5c3089d31c6f3 100644 (file)
@@ -140,6 +140,17 @@ cus-load\\|finder-inf\\|esh-groups\\|subdirs\\|leim-list\\)\\.el$\\)"
 
 (autoload 'autoload-rubric "autoload")
 
+(defconst finder--builtins-descriptions
+  ;; I have no idea whether these are supposed to be capitalized
+  ;; and/or end in a full-stop.  Existing file headers are inconsistent,
+  ;; but mainly seem to not do so.
+  '((emacs . "the extensible text editor")
+    (nxml . "a new XML mode"))
+  "Alist of built-in package descriptions.
+Entries have the form (PACKAGE-SYMBOL . DESCRIPTION).
+When generating `package--builtins', this overrides what the description
+would otherwise be.")
+
 (defvar finder--builtins-alist
   '(("calc" . calc)
     ("ede"  . ede)
@@ -155,6 +166,10 @@ cus-load\\|finder-inf\\|esh-groups\\|subdirs\\|leim-list\\)\\.el$\\)"
     ("decorate" . semantic)
     ("symref" . semantic)
     ("wisent" . semantic)
+    ;; This should really be ("nxml" . nxml-mode), because nxml-mode.el
+    ;; is the main file for the package.  Then we would not need an
+    ;; entry in finder--builtins-descriptions.  But I do not know if
+    ;; it is safe to change this, in case it is already in use.
     ("nxml" . nxml)
     ("org"  . org)
     ("srecode" . srecode)
@@ -202,16 +217,19 @@ from; the default is `load-path'."
 ;; but it does not, because the duplicates are (at time of writing)
 ;; all due to files in cedet, which end up with package-override set.
 ;; FIXME this is obviously fragile.
-;; Make the (eq base-name package) case below issue a warning?
+;; Make the (eq base-name package) case below issue a warning if
+;; package-override is nil?
 ;;         (push base-name processed)
            (with-temp-buffer
              (insert-file-contents (expand-file-name f d))
-             (setq summary  (lm-synopsis)
-                   keywords (mapcar 'intern (lm-keywords-list))
+             (setq keywords (mapcar 'intern (lm-keywords-list))
                    package  (or package-override
                                 (let ((str (lm-header "package")))
                                   (if str (intern str)))
                                 base-name)
+                   summary  (or (cdr
+                                 (assq package finder--builtins-descriptions))
+                                (lm-synopsis))
                    version  (lm-header "version")))
            (when summary
              (setq version (ignore-errors (version-to-list version)))
@@ -220,6 +238,9 @@ from; the default is `load-path'."
                     (push (cons package
                                  (package-make-builtin version summary))
                           package--builtins))
+                   ;; The idea here is that eg calc.el gets to define
+                   ;; the description of the calc package.
+                   ;; This does not work for eg nxml-mode.el.
                    ((eq base-name package)
                     (setq desc (cdr entry))
                     (aset desc 0 version)