changeset 4940:2f65b0f9c6fc

(etags-list-tags): Return t if found the file. (list-tags): Clear first-time when we go around the loop. Supply file name in error message. Remove dir names from files when preparing for completion.
author Richard M. Stallman <rms@gnu.org>
date Tue, 09 Nov 1993 07:13:00 +0000
parents d9ad390ef4e3
children 74c118ef608c
files lisp/progmodes/etags.el
diffstat 1 files changed, 10 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/progmodes/etags.el	Mon Nov 08 23:55:50 1993 +0000
+++ b/lisp/progmodes/etags.el	Tue Nov 09 07:13:00 1993 +0000
@@ -386,8 +386,8 @@
 		  (car (or 
 			;; First check only tables already in buffers.
 			(save-excursion (tags-table-including buffer-file-name
-								 tags-table-list
-								 t))
+							      tags-table-list
+							      t))
 			;; Since that didn't find any, now do the
 			;; expensive version: reading new files.
 			(save-excursion (tags-table-including buffer-file-name
@@ -992,7 +992,8 @@
 			       (progn (skip-chars-forward "^\177")
 				      (point))))
       (terpri)
-      (forward-line 1))))
+      (forward-line 1))
+    t))
 
 (defun etags-tags-apropos (string)
   (goto-char 1)
@@ -1247,12 +1248,13 @@
 ;;;###autoload
 (defun list-tags (file)
   "Display list of tags in file FILE.
-FILE should not contain a directory specification
-unless it has one in the tags table."
+FILE should not contain a directory specification."
   (interactive (list (completing-read "List tags in file: "
 				      (save-excursion
 					(visit-tags-table-buffer)
-					(mapcar 'list (tags-table-files)))
+					(mapcar 'list
+						(mapcar 'file-name-nondirectory
+							(tags-table-files))))
 				      nil t nil)))
   (with-output-to-temp-buffer "*Tags List*"
     (princ "Tags in file ")
@@ -1262,10 +1264,11 @@
       (let ((first-time t)
 	    (gotany nil))
 	(while (visit-tags-table-buffer (not first-time))
+	  (setq first-time nil)
 	  (if (funcall list-tags-function file)
 	      (setq gotany t)))
 	(or gotany
-	    (error "File %s not in current tags tables"))))))
+	    (error "File %s not in current tags tables" file))))))
 
 ;;;###autoload
 (defun tags-apropos (regexp)