遇到一个问题:
-q cscope: -q option mismatch between command line and old symbol database.
cscope: removed files cscope.po.out and cscope.in.out
google后无果, 直接用cscope提供的interface也是同样的, 发现在建索引的时候如果用了,-q选项, 在查的时候不加,就会把这两个文件删掉.
ok,现在的问题是如何让xemacs.el在调cscope的时候加上-q选项, 直接看xcscope.el, 文档很丰富的,说得也很明白. 要setq cscope-database-regexps变量, 这里可以指定一个项目源代码对应的cross-reference database所在目录, 以及调用cscope时的参数.
现在的设置:
(setq cscope-database-regexps
'(
("^/home/tangyi/program/cc/freebsd8/"
(t ("-q" "-d"))
t
)
("^/home/tangyi/program/cc/nginx-0.8.54/"
(t ("-q" "-d"))
t
)
))
指定-d参数可以让调用时不更新database,在浏览代码时,一般只是加些注释,不会加新的变量,函数,也就是不会更新tag.
btw, 在大项目里加-q很有必要,会建倒排索引,速度快不少.