是否有任何插件可以让emacs自动更新我的C项目中的TAGS文件(例如缓冲区保存或访问)或者如果没有TAGS文件存在则创建一个新插件?
我在Windows上运行(没有Cygwin),所以所有花哨的shell脚本都无济于事.我希望本机emacs解决方案不使用任何外部脚本.
我已经尝试过build-tags.el和etags-table.el,但这些都没有用(我想要的方式).
还有其他想法吗?
以下是我为C项目生成TAGS文件的方法:
Mx cd YOUR_DIRECTORY
Mx编译
找 .-name"*.[chCH]" - print | etags -
这将在当前目录中为所有子目录和文件创建TAGS文件.
这是一个完全相同的emacs函数:
(defun compile-tags () "compile etags for the current project" (interactive) (cd "YOUR_DIRECTORY") (compile "find . -name \"*.[chCH]\" -print | etags -"))
注意:如果你在Windows上,你需要安装cygwin,并确保c:\cygwin\bin
在你的路径中,以便你进入find
你的道路.还要确保emacs bin目录在您的路径中,以便您也可以获得etags
.
etags-update可能对您的情况有所帮助.我没有测试它,但根据自述文件:
etags-update.el是一种Emacs全局次要模式,可在保存文件时更新TAGS.
我在Emacswiki页面上找到了它来构建TAGS文件