一起talk Vim吧(第十五回:Vim插件之ctags)

各位看官们,大家好,欢迎大家一起来听大型章回体科技小说 :Vim。上一回咱们介绍了Vim插件中的配

置文件。这一回,咱们继续说Vim的插件。这一回我们要说的Vim插件叫:ctags。好了,还是那句话,

闲话休提,言归正转。让我们一起talk Vim吧!

看官们,咱们这回说的是Vim中的插件:ctags。ctags是一个工具,或者说一个应用软件。它可以通过插件

的形式运行在Vim中。“什么是ctags呢”,看官问的,正是我要说的,ctags主要用来生成带有tags标签

的文件,我们可以通过tags标签快速找到我们想要的东西。打个比喻:我们去某个城市旅游时,肯定会看

该城市的地图,然后通过地图找到我们想要去旅游的景点。ctags就好比城市地图,我们通过它能找到程

序中的函数或者变量。这在阅读代码时可以达到事半功倍的效果。

看官们,咱们使用的Mint中默认没有安装ctags,因此需要咱们手动安装一下。安装方法如下:

  • 1.检查ctags:
首先使用命令:which ctags 确认系统中是否安装了ctags,执行该命令后,没有任何的结

果,这说明系统中没有安装ctags。

  • 2.安装ctags:
使用命令:apt-get install ctags 来安装ctags,执行该命令后,得到下面的结果:

正在读取软件包列表... 完成

正在分析软件包的依赖关系树

正在读取状态信息... 完成

Note, selecting ‘exuberant-ctags‘ instead of ‘ctags‘

下列【新】软件包将被安装:

exuberant-ctags

升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 388 个软件包未被升级。

需要下载 116 kB 的软件包。

解压缩后会消耗掉 308 kB 的额外空间。

获取:1 http://archive.ubuntu.com/ubuntu/ trusty-updates/main exuberant-ctags i386 1:5.9~svn20110310-7ubuntu0.1 [116 kB]

下载 116 kB,耗时 2秒 (47.4 kB/s)

Selecting previously unselected package exuberant-ctags.

(正在读取数据库 ... 系统当前共安装有 158086 个文件和目录。)

Preparing to unpack .../exuberant-ctags_1%3a5.9~svn20110310-7ubuntu0.1_i386.deb ...

Unpacking exuberant-ctags (1:5.9~svn20110310-7ubuntu0.1) ...

Processing triggers for man-db (2.6.7.1-1ubuntu1) ...

正在设置 exuberant-ctags (1:5.9~svn20110310-7ubuntu0.1) ...

update-alternatives: using /usr/bin/ctags-exuberant to provide /usr/bin/ctags (ctags) in 自动模式

update-alternatives: using /usr/bin/ctags-exuberant to provide /usr/bin/etags (etags) in 自动模式

从结果中可以看到ctags已经成功安装到系统中。

  • 3.确认安装:
最后,我们还是确认一下是否安装成功,确认的方法和步骤1中的一样:which ctags,执

行该命令后,得到以下结果:/usr/bin/ctags。这说明系统中已经成功安装ctags。

  • 4.配置ctags:
在Vim的配置文件(.vimrc)中添加以下配置信息:  set tags=tags,set tags+=./tags

这样配置,可以让vim在启动时找到当前目录下的tags文件。

看官们,通过上面的方法,我们已经把Vim的插件:ctags安装好了。我这边已经OK,Are you OK? O_O

各位看官,关于Vim的插件:ctags,今天就说到这里为止。在后面的章回中,我们还会说其它的Vim插

件。欲知以后还有什么插件?且听下回分解。

时间: 2024-12-05 12:24:41

一起talk Vim吧(第十五回:Vim插件之ctags)的相关文章

【大话QT之十五】ctkPluginFrameWork插件系统Windows下编译

使用ctkPluginFramework作为插件系统框架的确有着众多开发上的优势.最近收到一些站内信,大家都想使用ctkPluginFramework但是不知道如何编译,这篇教程就来讲一讲ctkPluginFramework插件系统在Windows下的编译过程. 准备条件: 1. 安装Git,我们通过它来下载CTK的源码. 2. 安装CMake,我们用它来生成vs下的sln解决方案文件. 相关站点: 1. CTK的官网:http://www.commontk.org/index.php/Main

Gradle 1.12用户指南翻译——第二十五章. Scala 插件

其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://github.com/msdx/gradledoc/tree/1.12. 直接浏览双语版的文档请访问: http://gradledoc.qiniudn.com/1.12/userguide/userguide.html. 另外,Android 手机用户可通过我写的一个程序浏览文档,带缓存功能的,目前

Gradle 1.12用户指南翻译——第三十五章. Sonar 插件

本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://github.com/msdx/gradledoc/tree/1.12. 直接浏览双语版的文档请访问: http://gradledoc.qiniudn.com/1.12/userguide/userguide.html. 另外,Android 手机用户可通过我写的一个

一起talk C栗子吧(第八十五回:C语言实例--使用信号进行进程间通信二)

各位看官们,大家好,上一回中咱们说的是使用信号进行进程间通信的样例,这一回咱们接着上一回的内容,继续说该样例.闲话休提.言归正转. 让我们一起talk C栗子吧. 我们在上一回中举了使用信号进行进程间通信的样例,在该样例中.我们通过终端发出信号.当进程收到该信号后让它运行系统对信号定义的默认动作.这一回.我们再来举一个使用信号进行进程间通信的样例,只是.我们发送和处理信号的方式和上一回的样例不一样.在接下来的样例中,我们在一个进程中使用kill产生信号.在另外一个进程中接收而且依照自己的方式处理

一起talk C栗子吧(第三十五回:C语言实例--测试程序运行时间)

各位看官们,大家好,上一回中咱们说的是巧用溢出计算最值的例子,这一回咱们说的例子是:测试程序 运行时间.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,在编写程序的时候,可能需要计算程序运行的时间.通过计算时间,可以查看程序的性能.其实 我们在第三十一回中对各种常用排序算法总结时也使用过这种方法,不过当时使用的是Linux提供的time 命令.如果大家忘记了第三十一回的内容,可以点击这里查看. 我们今天说的测试程序运行时间,是让程序自己测试运行时间,而不是像第三十一回中哪样借用其它工

一起talk C栗子吧(第一百七十五回:C语言实例--获取当前终端的行数和列数)

各位看官们,大家好,上一回中咱们说的是关闭终端中缓冲功能的例子,这一回咱们说的例子是:获取当前终端的行数和列数 .闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,我们在前面章回中介绍了termios相关的信息,以及termios提供的编程接口,通过这些接口可以操作终端,今天我们再介绍一些操作终端的编程接口,通过这些接口可以获取当前终端的行数和列数,这便是我们今天的主题. int setupterm(char *term, int fd, int *errret); 该函数用来修改当前

一起talk C栗子吧(第九十五回:C语言实例--使用共享内存进行进程间通信一)

各位看官们,大家好,上一回中咱们说的是SystemV IPC结构概述的例子,这一回咱们说的例子是:使用共享内存进行进程间通信.闲话休提,言归正转.让我们一起talk C栗子吧! 共享内存是SystemV IPC结构这种抽象概念的一种具体对象.就和它的名字一样,它提供了一段内存空间供不同的进程使用,进程之间可以通过该内存空间传递数据,进而实现进程间的通信. 在介绍共享内存的使用方法之前,我们先介绍几个函数,这些函数都是用来操作共享的内存的. shmget函数 int shmget(key_t ke

一起talk C栗子吧(第二十五回:C语言实例-二分查找)

各位看官们,大家好,上一回中咱们说的是顺序查找的例子,这一回咱们说的例子是:二分查找.闲话休 提,言归正转.让我们一起talk C栗子吧! 看官们,我们在上一回中说了查找的相关内容,并且介绍了一种查找方法:顺序查找.大家还记得吗?台 下有看官说:记得呢.我刚想表扬一下这位看官,但是话还没有出口,这看官就又说了:就是不知道哪个 人最后找到钥匙没有...我什么表扬的话也没有说,大声吆喝道:"这一回中,我给大家介绍一种新的查 找方法:二分查找法.或者叫折半查找法也可以." 在介绍二分查找法之

一起talk C栗子吧(第一百三十五回:C语言实例--exec系列函数一)

各位看官们,大家好,上一回中咱们说的是"创建线程时的内存细节"的例子,这一回咱们说的例子是:exec系列函数.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,我们在前面介绍创建进程内存细节的章回中提到过exec系列函数,当时并没有做详细的介绍.今天我们将和大家一起看看exec系列函数. exec系列函数可以把某个进程导入到调用exec系列函数的进程中,并且把当前进程替换成一个新的进程,在前面的章回中我们也介绍了,执行exec系列函数会触发写时复制,因此新进程拥有自己的代码区