我是gtags的新手,并且有一个问题。我有一个很大的项目,比如android AOSP,我想用gtags来解析一些文件夹,我怎么能用gtags来实现呢?我搜索并得到了解决方案:
有什么好主意我可以设置文件夹路径,而gtags只处理这些文件夹吗?
答案 0 :(得分:2)
更新:该问题的作者在评论中提出了更好的解决方案。我在这里添加它以便更容易找到:
..在我需要的子目录中创建标记文件,并添加目录 加载项目时到GTAGSLIBPATH,
我的回答:
您可以通过在〜/ .globalrc或/etc/gtags.conf中将文件/目录列表添加到 skip 关键字来限制gtags索引。这是一个示例gtags.conf文件。
问题是,global / gtags软件包通常不会安装gtags.conf(至少它在ubuntu 12.04上的global-5.7.1-2中不存在),所以你要这么做需要从全局源代码分发中获取它,或者使用其他人的gtags.conf作为参考。例如here。
这样的事情应该有效。请注意,引导/
表示from the top of the tree
。没有它,gtags将跳过树中任何地方的匹配条目。:
common:\
:skip=/skip-this-dir/,/lib/and-this/,/include/and-this-one-too/:
答案 1 :(得分:1)
-f选项以find(1)为前提。请尝试以下方法。
$ find folder1 folder2 folder3 -type f -print | gtags -f -
或
$ find folder1 folder2 folder3 -type f -print >gtags.files
$ gtags
答案 2 :(得分:0)
这是我的bash函数,用于删除文件和路径,包括' dummy'和' win':
function gtagsupdate {
find . -name "*.c" -o -name "*.cpp" -o -name "*.h" -o -name "*.hpp" | grep -v dummy | grep -v win | gtags -f -
}