收录日期:2021/01/23 19:22:29 时间:2010-03-31 04:19:51 标签:emacs,etag

I am trying to find a way to auto-regenerate tags for my application and visit those tags in emacs to try to improve my workflow. Is it possible to get emacs to detect changes in TAG file and re-visit it ?

There is a tags setting:

(setq tags-revert-without-query t)

Which will tell tags functionality to re-visit the TAGS file if it changes on disk. This check happens every time you invoke a tags function.

Maybe not exactly what you're looking for, but I have a small function to regenerate and re-visit the tags table in the current working directory that I use all the time.

(defvar tags-cmd "etags -R 2>/dev/null")

(defun regen-tags ()
  "Regenerate the tags file for the current working directory"
  (interactive)
  (let ((tag-file (concat default-directory "TAGS")))
    (shell-command tags-cmd)
    (visit-tags-table tag-file)))