在一些复杂项目中,使用宏可以简化代码。但是对于刚接触项目的人来说,分析层层嵌套的宏,是件头疼的事情。
使用 vim 的多窗口功能,可以为此提供一些帮助。
如下图,分析4层嵌套的宏,DEFINE_I440FX_MACHINE -> DEFINE_PC_MACHINE -> type_init -> module_init,只要你的屏幕足够大,就能开足够的窗口,从而一览无余。
此外, vim YouCompleteMe 插件还提供了理解宏的终极武器:分析并展开宏,从而看见庐山真面目,如上图最右侧。
这里给出特写:
vim 多窗口是其自带功能,不需要任何插件。下面给出常用命令。
注,":" 表示在 vim 命令模式执行。
命令 | 描述 |
---|---|
:split [file] | 水平拆分当前窗口。file 为在新窗口中打开的文件路径。若不指定 file,则新窗口依然打开当前窗口的文件。 |
:vsplit [file] | 垂直拆分当前窗口。 |
ctrl-w h/j/k/l | 移动光标到其他窗口。比如,先按 ctrl-w,再按 h,移动光标到左侧窗口。 |
至于调节各窗口大小,交替、旋转窗口位置等等,命令非常之多,下面是我收录的命令。
就不一一翻译了。翻译了你也记不住。教你一个无脑方法,那就是启用鼠标:
bash
:set mouse=a
启用鼠标后,就可以随意点击窗口,拖动窗口边沿以调整大小。
不过想愉快地使用鼠标,需要你所使用的 vim 支持鼠标。通过如下命令查看是否支持。
bash
vim --version
