]> code.delx.au - gnu-emacs/blobdiff - lisp/finder.el
(ewoc--node-branch): Merge into unique caller.
[gnu-emacs] / lisp / finder.el
index dc7343b9fb024e72587c8ba62a3f404504a80dd0..1374e1f4e768d6844da8192955347998d4e1bfad 100644 (file)
@@ -1,6 +1,7 @@
 ;;; finder.el --- topic & keyword-based code finder
 
-;; Copyright (C) 1992,97,98,1999,2001,2004  Free Software Foundation, Inc.
+;; Copyright (C) 1992, 1997, 1998, 1999, 2001, 2002, 2003,
+;;   2004, 2005, 2006 Free Software Foundation, Inc.
 
 ;; Author: Eric S. Raymond <esr@snark.thyrsus.com>
 ;; Created: 16 Jun 1992
@@ -21,8 +22,8 @@
 
 ;; You should have received a copy of the GNU General Public License
 ;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
 
 ;;; Commentary:
 
   (let ((map (make-sparse-keymap)))
     (define-key map " "        'finder-select)
     (define-key map "f"        'finder-select)
+    (define-key map [follow-link] 'mouse-face)
     (define-key map [mouse-2]  'finder-mouse-select)
     (define-key map "\C-m"     'finder-select)
     (define-key map "?"        'finder-summary)
+    (define-key map "n" 'next-line)
+    (define-key map "p" 'previous-line)
     (define-key map "q"        'finder-exit)
     (define-key map "d"        'finder-list-keywords)
     map))
@@ -182,7 +186,7 @@ no arguments compiles from `load-path'."
 ;;; End:
 ;;; " (file-name-nondirectory generated-finder-keywords-file) " ends here\n")
       (kill-buffer "*finder-scratch*")
-      (eval-current-buffer) ;; So we get the new keyword list immediately
+      (eval-buffer) ;; So we get the new keyword list immediately
       (basic-save-buffer))))
 
 (defun finder-compile-keywords-make-dist ()
@@ -301,11 +305,13 @@ FILE should be in a form suitable for passing to `locate-library'."
     (finder-summary)))
 
 (defun finder-current-item ()
-  (if (and finder-headmark (< (point) finder-headmark))
-      (error "No keyword or filename on this line")
-    (save-excursion
-      (beginning-of-line)
-      (current-word))))
+  (let ((key (save-excursion
+              (beginning-of-line)
+              (current-word))))
+    (if (or (and finder-headmark (< (point) finder-headmark))
+           (= (length key) 0))
+       (error "No keyword or filename on this line")
+      key)))
 
 (defun finder-select ()
   "Select item on current line in a finder buffer."