如何为vim设置cscope?

时间:2014-08-27 07:24:01

标签: vim cscope

我正在尝试将cscopevim一起使用,我发现事情有点令人困惑。

假设我在/home/user/projects/project_foo/中有一个项目。如果我直接通过cscope它一切正常(我可以找到符号)。如果我查看vim,则会收到no cscope connections错误。所以我不明白它是如何运作的。

据我所知,你必须为你的项目构建一个数据库,但是当我在项目目录中运行cscope [-R] [-b]时,在这个目录中没有创建文件。那么数据库在哪里创建?每个项目或全局数据库都有单独的数据库吗?

每次更改项目符号时是否必须重建数据库(例如添加函数)?

如何使vim(从项目目录加载)使用该项目的数据库。如果有全局数据库,我可以仅在当前项目中进行vim搜索吗?

我发现了一些有关此事的零星信息,但对于初次使用的用户来说,这一切都非常混乱。如果你能澄清这些事情,它会更清楚,我能够弄清楚其余的事情。

2 个答案:

答案 0 :(得分:4)

感谢tristan

:h cscope-howtouse
:h cscope-suggestions 

cscope -b创建数据库cscope.out :cs add cscope.out添加了数据库。

答案 1 :(得分:1)

  

每次更改项目符号时是否必须重建数据库(例如添加函数)?

如果您希望能够找到该特定功能,是的。您仍然可以在不重建数据库的情况下进行操作,但如果要添加代码行(例如),则cscope会指向创建数据库时文件中的符号的原始位置。

  

如何使vim(从项目目录加载)使用该项目的数据库。如果有全局数据库,我可以只在当前项目中进行vim搜索吗?

您可以通过更改vimrc脚本来完成此操作。 Autoloading cscope database教程是您可以配置的一个很好的示例。