首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在VIM中导航大型项目

如何在VIM中导航大型项目
EN

Stack Overflow用户
提问于 2009-09-22 00:15:43
回答 11查看 35.4K关注 0票数 90

如何仅使用VIM来管理大型项目(数百个文件)?

我个人开始在任何比小项目更大的项目中遇到问题。

当它在另一个文件中时,有没有办法快速地‘转到文件’,最好用名字completition?

  • same来表示‘转到类定义’

我差不多知道所有的VIM基础知识,所以我可以用它来编写脚本或快速编辑一些源代码。但当我不得不在文件之间导航时,这对我来说真的很麻烦。

EN

回答 11

Stack Overflow用户

发布于 2009-09-22 00:21:22

VIM对标签有很好的支持。一旦为项目创建了标记文件,就可以跳转到方法、类等的定义或声明,包括在文件之间跳转,所有这些都在同一个编辑会话中进行。

试一试

代码语言:javascript
复制
:help tags

要为C/C++生成标记文件,请转到shell提示符(我假设您的系统是*nix/Cygwin)并输入

代码语言:javascript
复制
info ctags

代码语言:javascript
复制
ctags --help
票数 34
EN

Stack Overflow用户

发布于 2011-09-12 20:21:12

我喜欢简单的解决方案,目前我最喜欢的导航方式是:

添加到~/.vimrc.local

代码语言:javascript
复制
set path=$PWD/**

然后在编辑器中键入以下内容以查找当前工作目录(pwd)中的任何位置的文件

代码语言:javascript
复制
:find user_spec.rb

您可以在文件名上使用制表符完成来查找多个选项,这使得这个TextMate转换非常愉快。

票数 29
EN

Stack Overflow用户

发布于 2009-09-22 00:35:52

我结合使用NERDTree (目录侧边栏)、FuzzyFinder Textmate (像TextMate的CMD+T一样转到文件)和会话(:h会话)来帮助我处理大型项目。

我建议使用一些会话助手插件。我会提到我所使用的,但我对它还不满意。只需谷歌"vim会话“。

让FuzzyFinder Textmate工作需要注意的一件事是,它依赖于旧版本的FuzzyFinder插件,特别是v2.16。任何更高的值都会导致错误。但这绝对是值得的。虽然它没有名称补全,但它的搜索是智能的,所以如果我搜索fro/time/actionsphp,它会拉出文件apps/(fro)ntend/modules/(time)_tracking/actions/(actions).class.(php) (括号表示它匹配的内容)。它使得挑选出只按文件夹名唯一的文件变得非常容易。

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1457540

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档