1.Ctags

Ctags工具是用来遍历源代码文件生成tags文件,这些tags文件能被编辑器或者其他工具用来快速查找定位源代码中的符号,入变量名,函数名等。比如,tags文件就是Taglist和OmniCppComplete工作的基础。

安装过程:

(1)打开链接:www.vim.org/scripts/script.php?script_id=610,下载完成后进去下载文件夹。

(2)在下载文件夹下通过命令unzip ctags.vim命令解压下载的stags压缩文件,然后通过命令sudo apt install exuberant-ctags命令安装ctags插件。

使用过程:

(1)到自己的源码目录中,如果你的源码是多层的目录, 就去最上层的目录, 在该目录下运行命令: ctags –R,会产生一个名叫tags文件,将该文件拷贝到$HOME/.vim/tags目录下。然后用命令$vim ~/.vim/tags就能看到生成的tags文件中的内容。

(2)在vim中运行命令“:set tags=HOME/.vim/tags/tags,也可以将这个命令放在HOME/.vimrc文件中。当要查询某个函数的定义时,将光标放在该函数上,按<Ctrl+]>键,就会跳转到该函数的定义处,按<Ctrl+t>键是返回。(注意:这里的HOME是指的存放.vim的路径就是你用户名的路径,不仅仅是home这个路径,一般的是要增加你的用户名,类似home/yang/)

这样在使用的时候也会出现一个问题,当你修改程序后, 如果增加了函数定义,或者删除了变量定义, tags文件不能自动rebuild, 你必须手动再运行一下命令:ctags –R。

2.Taglist

列出了当前文件中所有宏、全局变量,函数名等,能高效浏览源码,功能像vc里的workspace。

安装过程:

(1)从网址http://www.vim.org/scripts/script.php?script_id=273下载taglist压缩包。

(2)把解压的两个文件taglist.vim 和 taglist.txt 分别放到HOME/.vim/plugin和HOME/.vim/doc 目录中。

(3)通过命令$vim ~/.vimrc在.vimrc文件中加入下面两句话:

let Tlist_Show_One_File=1

let Tlist_Exit_OnlyWindow=1

使用插件Taglist:

进入vim后,再vim命令模式下输入Tlist命令就能打开taglist窗口。

我们可以通过Ctrl-w快捷键或鼠标点击在Taglist窗口和编辑区之间切换焦点,在Taglist窗口用鼠标或键盘选择某个符号,然后点击或回车,就可以跳转到该符号定义的位置。

更多功能可通过在Vim命令行下运行help taglist.txt查询。

关于插件的管理,主要就是通过.vimrc文件来管理vim插件的。通过指令行来使用插件不方便,使用.vimrc文件能够实现自动化或者半自动化的使用插件很方便。

下面是我的vimrc文件,由于现在对于插件的种类、具体的功能还不是很熟悉,而且写的代码太少,也不知道到底有哪些很好用的插件,所以需要管理的插件和用到功能很少。以后学习的过程中也要注意工具的使用,更加熟练的使用工具是提高效率的办法之一。

常用vim插件的安装、使用和管理的更多相关文章

  1. vim插件的安装方式 -- vim注释插件和doxygen函数注释生成插件-ctrlp插件-tabular等号对齐 插件

    使用unzip的时候 指定 -d选项, 是说明解压到的 目标地址. 这个参数还是比较方便的, 比直接unzip到当前目录, 然后在去拷贝到目标目录, 然后再删除当前目录中的解压文件夹, 方便多了. 使 ...

  2. 【linux】vim常用操作及vim插件的安装使用

    vim是linux下一个非常好用的文本编辑器,在linux下开发的人员要熟练掌握vim常用命令. 1.  打开在第n行 vim +143 filename.txt 2. 只读模式打开 vim -R / ...

  3. Vim 插件的安装

    Vim 自带了文本格式化,通过 gg=G 触发.但大数情况下不满足需求,对于特定语言,比如 JavaScript,需要安装相应的插件来实现. 插件的存在形式 Vim 插件以三种形式存在, 单个的 .v ...

  4. vim插件(vim-emmet)安装步骤

    vim安装插件  vim-emmetvim-emmet网址  https://www.vim.org/scripts/script.php?script_id=2981pathogen.vim网址  ...

  5. 常用VIM插件配置

    airline 状态栏美化 除了airline本体还要下airline主题 和打过powerline补丁的字体 常用设置: set laststatus=2 " 总是显示状态栏 set no ...

  6. Vim插件YouCompleteMe安装记录(号称最难装的Vim插件?)

    使用 PulginInstall 安装就不要想了,如果你没有梯子的话 自己的 ssr 被封,使用的同事的 ss,但是同事设置的加密方式在 linux 上的 ss 应用不支持... 好吧,直接上过程 1 ...

  7. vim插件YouCompleteMe安装

    这里在ubuntu16.4下安装的需要提前安装cmake clang python3sudo apt-get install clang  因为不能访问google,安装时,安装go的插件会访问goo ...

  8. 常用Eclipse插件在线安装地址

    Srping IDE http://www.springsource.com/update/e3.5   EasyShellhttp://pluginbox.sourceforge.net   M2E ...

  9. [vundle]利用vundle工具来管理vim插件

    转自:http://os.51cto.com/art/201507/484174.htm Vim是Linux上一款用途广泛的轻量级文本编辑工具.虽然对普通的Linux用户来说开始学用起来难度相当大,但 ...

随机推荐

  1. [LeetCode] Implement strStr() 实现strStr()函数

    Implement strStr(). Returns the index of the first occurrence of needle in haystack, or -1 if needle ...

  2. jquery 监听常用监听方法

    最近在做网站开发,需要用到不少js的知识.之前学过现在重新来看,发现还真忘了不少~~ 在使用基于bootstrap,或者基于 jquery 的插件时,如过没有出现预期效果 请最先检查下是否优先载入的 ...

  3. 函数:MySQL中字符串匹配函数LOCATE和POSITION使用方法

    1. 用法一 LOCATE(substr,str) POSITION(substr IN str) 函数返回子串substr在字符串str中第一次出现的位置.如果子串substr在str中不存在,返回 ...

  4. 一个python的邮件发送脚本,自动,定时,可以附件发送,抄送,附有说明文件

    #!/bin/env python # -*- coding: utf-8 -*- import datetime import smtplib import os,sys from email.mi ...

  5. vue.js第六课

    class与style绑定 绑定HTML class 对象语法 数组语法 绑定内联样式 对象语法 数组语法 自动添加前缀 1.class与style绑定. 数据绑定一个常见需求就是 操作元素的clas ...

  6. python 抽象类、抽象方法、接口、依赖注入、SOLIP

    1.程序设计原则:SOLIP SOLIP设计原则 1.单一责任原则(SRP) 一个对象对只应该为一个元素负责 2.开放封闭原则(OCP) 对扩展开放,修改封闭 3.里氏替换原则(LSP) 可以使用任何 ...

  7. Android换肤技术总结

    原文出处: http://blog.zhaiyifan.cn/2015/09/10/Android%E6%8D%A2%E8%82%A4%E6%8A%80%E6%9C%AF%E6%80%BB%E7%BB ...

  8. 使用Amoeba for mysql实现mysql读写分离

    Amoeba主要在应用层访问MySQL的时候充当query 路由功能,专注 分布式数据库 proxy 开发.座落与Client.DB Server(s)之间.对客户端透明.具有负载均衡.高可用性.Qu ...

  9. Markdown语法 中文版

    文章翻译自Markdown创始人JOHN GRUBER的 个人博客, 英文原文请参见 Markdown Syntax; 本文地址: http://www.cnblogs.com/ayning/p/43 ...

  10. OC与JavaScript的交互

    stringByEvaluatingJavaScriptFromString的用法,它的功能非常的强大,用起来非常简单,通过它我们可以很方便的操作uiwebview中的页面元素. UIWebView是 ...