原文来自:使用vim及安装的插件构建C语言开发环境 – 无敌牛

欢迎参观我的个人博客无敌牛 – 技术/著作/典籍/分享等

vim.plug.tar下载

分享使用vim搭建C语言开发环境好用的几个插件。

首选确保已经安装了vim工具和ctags工具。

ctags支持哪些语言建立索引,可以用 ctags --list-maps 查看,不同的版本支持的语言不一样,新版本已经支持的相当丰富了。

插件安装:

创建 ~/.vim目录。mkdir ~/.vim

在目录下解压分享的插件文件:tar pzxvf vim.plug.tar.gz,目录结构如下所示:

ctags工具,可以用yum或者apt进行安装

fedora系列操作系统下载 yum install ctags

debian系列操作系统下载 apt install exuberant-ctags

包名称不正确可以用 yum search 或者 apt search 查找一下

首先使用ctags工具生成vim的检索库,在代码目录执行如下指令,生成tags文件。ctags工具还支持java、python。ctags –list-languages 可以查看支持哪些语言处理。

也可以用find过滤需要创建索引的文件:
find . -name "*.[ch]" | xargs ctags -R

打开一个代码文件,.c或者.h文件都可以。

插件中设置了几个比较好用的快捷键。

普通模式下,输入 t l 快捷键(顺序按下就可以),或者在命令行模式下输入 :Tlist,效果如下图。可以用ctrl+w左右切换,在左边选中变量或者函数后,敲回车,可以定位到变量或者函数定义。

普通模式下输入 w m 快捷键(顺序按下就可以),或者在命令行模式下输入 :WMToggle,效果如下所示,可以用ctrl+w左右切换控制窗口。可以打开新文件,或者定位变量或者函数位置。

命令行下输入 :ls 查看已打开文件

命令行下输入 :bn 切换当前打开的文件;或者输入 :b N,N代表 :ls 列出的已打开文件的编号,也可完成已打开文件的切换。

命令行下输入 :bd 或者 :bd N(N代表 :ls 列出的已打开文件的编号),来关闭当前文件或者指定编号的文件。

示例如下图:

普通模式下输入 ctrl + ] 追踪函数、结构体、变量等的定义位置

普通模式下输入 gd 选择当前变量并在全文查找。

还有很多用法,读者可以自己摸索。

vim基本操作参看往期文章:VIM基本操作与快捷键 – 无敌牛 VIM基本操作与快捷键


2024-07-22更新:

新发现一个很好用的插件 ack.vim,可以像grep一样,查询当前目录下有哪些文件包含查询的字符串。源代码在这里:GitHub - mileszs/ack.vim: Vim plugin for the Perl module / CLI script 'ack'。需要安装工具ack

fedora系列的系统安装:yum install ack 。注意:需要 epel 源

debian系列的系统安装:apt install ack-grep

kali环境直接安装:apt install ack

然后下载文件 ack.vim/plugin/ack.vim at master · mileszs/ack.vim · GitHub 保存到 ~/.vim/plugin/ack.vim 就可以了。

上边的 vim.plug.tar.gz 文件已经更新,增加了ack.vim 插件,github连接不顺利可以下载直接使用。

示例如下图,输入Ack pthread_pool_task 就会显示grep显示的结果。ctrl + w 切换窗口,选中某一行,点击回车,就会跳转到对应文档的对应位置。

Logo

一站式 AI 云服务平台

更多推荐