导读 | 目前为止,在一系列介绍 vim 插件文章中,我们介绍了使用 Pathogen 插件管理包安装基本的 vim 插件,也提及了另外三个插件:Tagbar、delimitMate 和 Syntastic。现在,在最后一部分,我们将介绍另一个十分有用的插件 a.vim。 |
如果你一直用像 C、C++ 这样的语言进行开发工作,你一定有这样的感触:我特么已经数不清我在头文件和源代码之间切换过多少次了。我想说的是,确实,这个操作十分基本,十分频繁。
尽管使用基于 GUI(图形界面)的 IDE(集成开发环境)非常容易通过鼠标的双击切换文件,但是如果你是资深 vim 粉,习惯用命令工作就有点尴尬了。但是不要害怕,我有秘籍--插件 a.vim。它可以让你解决尴尬,专治各种文件切换。
在我们介绍这个神器用法之前,我必须强调一点:这个插件的安装过程和我们其他篇介绍的不太一样,步骤如下:
- 首先,你需要下载两个文件(a.vim 和 alternate.txt),你可以在这里找到它们。
- 接下来,创建如下目录:~/.vim/bundle/avim、~/.vim/bundle/avim/doc、?~/.vim/bundle/avim/plugin 和?~/.vim/bundle/autoload。
- 创建好目录之后,将?a.vim 放到?~/.vim/bundle/avim/plugin?和?~/.vim/bundle/autoload,以及将 alternate.txt 放到 ~/.vim/bundle/avim/doc。
就是这样,如果上述步骤被你成功完成,你的系统就会安装好这个插件。
使用这个插件十分简单,你仅仅需要运行这个命令:A 如果目前的文件是源文件(比如 test.c),这个神器就会帮你打开 test.c 对应的头文件(test.h),反之亦然。
当然咯,不是每个文件对应的头文件都存在。这种情况下,如果那你运行 :A命令,神器就会为你新建一个文件。比如,如果 test.h不存在,那么运行此命令就会帮你创建一个 test.h,然后打开它。
如果你不想要神器开启此功能,你可以在你的家目录的隐藏文件.vimrc 中写入 g:alternateNonDefaultAlternate 变量,并且赋给它一个非零值即可。
还有一种情况也很普遍,你需要打开的文件并非是当前源代码的头文件。比如你目前在 test.c 你想打开 men.h 这个头文件,那么你可以输入这个命令 :IH <filename> ,毋需赘言,你肯定要在后面输入你要打开的的文件名称 <filename>。
目前为止,我们讨论的功能都仅限于你当前文件和要操作的文件都在同一个目录去实现。但是,你也知道,我们还有特殊情况,我是说,许多项目中头文件与对应的源文件并不一定在同一目录下。
为了搞定这个问题,你要使用这个 g:alternateSearchPath 这个变量。官方文档是这么解释的: