aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuri Linkov2011-11-20 01:34:40 +0200
committerJuri Linkov2011-11-20 01:34:40 +0200
commitd5a6b3badfc6e09c4bbda97f4ccf089952d57e5a (patch)
tree5d4d61f5c84ba1ee1a4daaf13d14b408e4d3a924
parente981b61f0f8bb5edbb02fecf26cda8b4bcf5ce75 (diff)
downloademacs-d5a6b3badfc6e09c4bbda97f4ccf089952d57e5a.tar.gz
emacs-d5a6b3badfc6e09c4bbda97f4ccf089952d57e5a.zip
* lisp/info.el (Info-finder-find-node): Use `package--builtins' instead
of `package-alist'. Use node names formed by the pattern "Keyword " and the keyword name.
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/info.el35
2 files changed, 26 insertions, 15 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 2fb013649a5..e38f3c98637 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
12011-11-19 Juri Linkov <juri@jurta.org>
2
3 * info.el (Info-finder-find-node): Use `package--builtins' instead
4 of `package-alist'. Use node names formed by the pattern "Keyword "
5 and the keyword name.
6
12011-11-19 Andreas Schwab <schwab@linux-m68k.org> 72011-11-19 Andreas Schwab <schwab@linux-m68k.org>
2 8
3 * progmodes/sh-script.el (sh-assignment-regexp): Add entry for 9 * progmodes/sh-script.el (sh-assignment-regexp): Add entry for
diff --git a/lisp/info.el b/lisp/info.el
index 8af1bb04f90..4f2f33d017c 100644
--- a/lisp/info.el
+++ b/lisp/info.el
@@ -3403,7 +3403,7 @@ Build a menu of the possible matches."
3403(declare-function finder-unknown-keywords "finder" ()) 3403(declare-function finder-unknown-keywords "finder" ())
3404(declare-function lm-commentary "lisp-mnt" (&optional file)) 3404(declare-function lm-commentary "lisp-mnt" (&optional file))
3405(defvar finder-keywords-hash) 3405(defvar finder-keywords-hash)
3406(defvar package-alist) ; finder requires package 3406(defvar package--builtins) ; finder requires package
3407 3407
3408(defun Info-finder-find-node (_filename nodename &optional _no-going-back) 3408(defun Info-finder-find-node (_filename nodename &optional _no-going-back)
3409 "Finder-specific implementation of `Info-find-node-2'." 3409 "Finder-specific implementation of `Info-find-node-2'."
@@ -3417,14 +3417,14 @@ Build a menu of the possible matches."
3417 (insert "***************\n\n") 3417 (insert "***************\n\n")
3418 (insert "* Menu:\n\n") 3418 (insert "* Menu:\n\n")
3419 (dolist (assoc (append '((all . "All package info") 3419 (dolist (assoc (append '((all . "All package info")
3420 (unknown . "unknown keywords")) 3420 (unknown . "Unknown keywords"))
3421 finder-known-keywords)) 3421 finder-known-keywords))
3422 (let ((keyword (car assoc))) 3422 (let ((keyword (car assoc)))
3423 (insert (format "* %s %s.\n" 3423 (insert (format "* %s %s.\n"
3424 (concat (symbol-name keyword) ": " 3424 (concat (symbol-name keyword) ": "
3425 "kw:" (symbol-name keyword) ".") 3425 "Keyword " (symbol-name keyword) ".")
3426 (cdr assoc)))))) 3426 (cdr assoc))))))
3427 ((equal nodename "unknown") 3427 ((equal nodename "Keyword unknown")
3428 ;; Display unknown keywords 3428 ;; Display unknown keywords
3429 (insert (format "\n\^_\nFile: %s, Node: %s, Up: Top\n\n" 3429 (insert (format "\n\^_\nFile: %s, Node: %s, Up: Top\n\n"
3430 Info-finder-file nodename)) 3430 Info-finder-file nodename))
@@ -3434,24 +3434,29 @@ Build a menu of the possible matches."
3434 (mapc 3434 (mapc
3435 (lambda (assoc) 3435 (lambda (assoc)
3436 (insert (format "* %-14s %s.\n" 3436 (insert (format "* %-14s %s.\n"
3437 (concat (symbol-name (car assoc)) "::") 3437 (concat (symbol-name (car assoc)) ": "
3438 "Keyword " (symbol-name (car assoc)) ".")
3438 (cdr assoc)))) 3439 (cdr assoc))))
3439 (finder-unknown-keywords))) 3440 (finder-unknown-keywords)))
3440 ((equal nodename "all") 3441 ((equal nodename "Keyword all")
3441 ;; Display all package info. 3442 ;; Display all package info.
3442 (insert (format "\n\^_\nFile: %s, Node: %s, Up: Top\n\n" 3443 (insert (format "\n\^_\nFile: %s, Node: %s, Up: Top\n\n"
3443 Info-finder-file nodename)) 3444 Info-finder-file nodename))
3444 (insert "Finder Package Info\n") 3445 (insert "Finder Package Info\n")
3445 (insert "*******************\n\n") 3446 (insert "*******************\n\n")
3446 (dolist (package package-alist) 3447 (insert "* Menu:\n\n")
3447 (insert (format "%s - %s\n" 3448 (let (desc)
3448 (format "*Note %s::" (nth 0 package)) 3449 (dolist (package package--builtins)
3449 (nth 1 package))))) 3450 (setq desc (cdr-safe package))
3450 ((string-match "\\`kw:" nodename) 3451 (when (vectorp desc)
3452 (insert (format "* %-16s %s.\n"
3453 (concat (symbol-name (car package)) "::")
3454 (aref desc 2)))))))
3455 ((string-match "\\`Keyword " nodename)
3451 (setq nodename (substring nodename (match-end 0))) 3456 (setq nodename (substring nodename (match-end 0)))
3452 ;; Display packages that match the keyword 3457 ;; Display packages that match the keyword
3453 ;; or the list of keywords separated by comma. 3458 ;; or the list of keywords separated by comma.
3454 (insert (format "\n\^_\nFile: %s, Node: kw:%s, Up: Top\n\n" 3459 (insert (format "\n\^_\nFile: %s, Node: Keyword %s, Up: Top\n\n"
3455 Info-finder-file nodename)) 3460 Info-finder-file nodename))
3456 (insert "Finder Packages\n") 3461 (insert "Finder Packages\n")
3457 (insert "***************\n\n") 3462 (insert "***************\n\n")
@@ -3463,11 +3468,11 @@ Build a menu of the possible matches."
3463 (split-string nodename ",[ \t\n]*" t) 3468 (split-string nodename ",[ \t\n]*" t)
3464 (list nodename)))) 3469 (list nodename))))
3465 hits desc) 3470 hits desc)
3466 (dolist (kw keywords) 3471 (dolist (keyword keywords)
3467 (push (copy-tree (gethash kw finder-keywords-hash)) hits)) 3472 (push (copy-tree (gethash keyword finder-keywords-hash)) hits))
3468 (setq hits (delete-dups (apply 'append hits))) 3473 (setq hits (delete-dups (apply 'append hits)))
3469 (dolist (package hits) 3474 (dolist (package hits)
3470 (setq desc (cdr-safe (assq package package-alist))) 3475 (setq desc (cdr-safe (assq package package--builtins)))
3471 (when (vectorp desc) 3476 (when (vectorp desc)
3472 (insert (format "* %-16s %s.\n" 3477 (insert (format "* %-16s %s.\n"
3473 (concat (symbol-name package) "::") 3478 (concat (symbol-name package) "::")