vim插件管理
vim拾遗
q:显示 vim 命令历史
插件安装
vundle插件管理器
插件收藏
NERD-目录浏览插件
- :NERDTree 打开插件
- o 打开文件或文件夹
- s 水平切分窗口打开文件
Ctrlp-模糊搜索工具
vim 执行命令 cd path 更换当前目录
- ctrl+p 打开插件
- ctrl+c 关闭
- ctrl+x 水平打开文件
- ctrl+v 垂直打开
- ctrl+t 新建标签打开
taglist-展示函数和变量命
- 依赖与 ctags 工具,
ctags -R --c++-kinds=+p --fields=+iaS --extra=+q /dir, 生成tags文件- 在 vimrc 中
set tags=tags;, 可以在 vim 中跳换查看定义。
taglist窗口
:Tlist打开 taglist 窗口espace显示 tag 的函数声明enter跳到符号定义o新窗口预览函数u更新符号表+同 zo 打开一个折叠-同 zo 关闭一个折叠*同 zR 打开所有折叠=同 zM 关闭所有折叠[[/]]调至前一个/后一个文件, 打开过的文件都列在符号表中q关闭窗口
vim代码编辑窗口
Ctrl+]查看定义Ctrl+O返回源文件Ctrl+w ]新窗口打开定义, 同:ptags tagnamegd跳转到当前函数内第一次出现的位置gD跳转到当前文件内第一次出现的位置*/#跳转到当前符号上/下一次出现位置
:ts tag_name: 列出 tag_name 所有匹配:[n]tp: 跳转到前n个匹配:[n]tn: 跳转到后n个匹配
[i列出当前符号出现的第一行,所有文件,从文件头开始[I列出当前符号出现的所有位置]i列出当前符号出现的第一行(当前文件中,光标行内)]I列出当前符号出现的所有位置(当前文件中)
cscope
- 依赖cscope工具生成数据库,
cscope -Rbqk生成cscope.in/po .out文件, 另外缺省不解析C++及Java文件,需要find . -type f >cscope.files将生成文件列表:cs add cscope.out指定数据库文件:cs show检视是否指定正确
cs find c function查找所有调用位置cs find d function查找该函数中调用的函数的列表,未尝试成功cs find f file查找文件并打开cs find s function列出所有出现的位置,ts function 至列出定义的位置cs find t function列出字符串查找的结果,将符号认为是字符串cs find e function列出字符串正则查找结果