pathogen

功能说明

一个插件包往往具备多种功能,每个文件根据Vim的路径约定会放置到不同的目录下,通用插件放到plugin下,语法高亮插件放到syntax下,自动加载插件放到autoload下,文件类型插件放到ftplugin下,编码格式插件的放到indent下......如果你是重度插件用户,你会发现在.vim主目录下会有一堆文件夹,无论是你想要安装新插件,还是想删除旧插件,都非常麻烦,你不得不在每个文件夹下找相关的vim文件。

pathogen是管理插件的插件,主要用来解决上述问题。pathogen在.vim目录下建立bundle文件,所有的插件都会在该目录下管理。当Vim启动时,会自动执行runtimepath(rtp)列表中所包含文件夹下的vim脚本,pathogen会在启动时把./vim/bundle下的文件夹中的插件按照一定顺序递归加载到rtp中,这样Vim启动时,通过pathogen管理的插件就生效了。

有了pathogen之后,一般.vim文件夹下只有三个文件夹:autoload、bundle和doc,其他插件将被安装在bundle文件夹下。

安装

  1. .vim文件夹下建立autoload和bundle目录;
  2. 下载pathogen:https://github.com/tpope/vim-pathogen;
  3. 把vim-pathogen/autoload/pathogen.vim文件,将其复制到.vim/autoload目录下;
  4. .vimrc文件中增加如下代码:call pathogen#infect().

注意事项:

新插件安装到bundle目录下后,如果插件中包含doc,则需要在Vim中运行:Helptags来生成在线帮助tags。

NERDTree

功能说明:

NERDTree是Vim最常用的插件之一,可以在Vim运行时显示目录和文件结构,类似TextMate左侧的文件浏览器,但操作起来更为方便,你可以在手不离开键盘的情况下快速浏览文件,并在文件和文件夹之间进行切换。

安装

  1. 进入.vim/bundle目录;
  2. 执行git clone git://github.com/scrooloose/nerdtree.git;
  3. 下载完成后,在bundle下会多出一个nerdtree的文件夹,所有相关插件都在该文件夹下;
  4. 在Vim中运行:Helptags来生成NERDTree的在线帮助tags。

使用说明

打开Vim,输入:NERDTree,即可呼出执行Vim命令的当前目录的文件目录。

NERDTree提供了丰富的键盘操作方式来浏览和打开文件,我简单介绍一些常用的快捷键:

  • o打开关闭文件或者目录,如果是文件的话,光标出现在打开的文件中;
  • go效果同上,不过光标保持在文件目录里,类似预览文件内容的功能;
  • i和s可以水平分割或纵向分割窗口打开文件,前面加g类似go的功能;
  • t在标签页中打开;
  • T在后台标签页中打开;
  • p到上层目录;
  • P到根目录;
  • K到同目录第一个节点;
  • J到同目录最后一个节点;
  • m显示文件系统菜单(添加、删除、移动操作);
  • ?帮助;
  • q关闭。

Command-T

功能说明

Command-T是一个基于Ruby和C扩展实现的快速文件浏览的插件,类似TextMate的Go to File(Command+T呼出)功能,或Eclipse的Open Resource(Command+Shift+r)功能,可以通过模糊匹配快速定位并打开文件。

安装

  1. 下载最新vba文件:https://wincent.com/products/command-t;
  2. ~/.vim/bundle目录下创建文件夹command-t;
  3. 用Vim打开command-t-1.4.vba;
  4. 执行:UseVimball ~/.vim/bundle/command-t
  5. 进入ruby目录下编译C扩展(当然你需要安装ruby)

      cd ~/.vim/bundle/command-t/ruby/command-truby extconf.rbmake

使用说明:

输入:CommandT可进入文件快速定位功能,如图所示:

  1. ctrl+j/k 上下选择文件,选中后回车打开文件
  2. ctrl+t 以tab方式打开文件
  3. ctrl+s/v 可以水平或垂直分割窗口打开文件
  4. ctrl+c 退出该模式

该插件还有个常用命令, :CommandTBuffer,可以浏览缓冲区的文件,并重新打开。操作方式同上。

注意事项

Vim版本需要支持ruby扩展。我们可以在Vim中输入:ruby 1检查,如果出现E319: Sorry, the command is not available in this version就表示不支持。

如果出现上述情况,我们就需要自己去编译能够支持ruby的Vim,嫌麻烦的话可以直接安装vim-nox,自带Ruby支持,在Ubuntu下安装命令如下:sudo apt-get install vim-nox

执行ruby extconf.rb命令时如果出现找不到mkmf包的情况,说明你需要安装ruby-dev的包,在Ubuntu下安装命令如下:sudo apt-get install ruby1.8-dev

Powerline

功能说明:

Powerline是Vim的一个非常漂亮的状态栏插件,安装了Powerline之后,Vim底部将会出现一个增强型状态栏,当Vim处于NORMAL、INSERT、BLOCK等状态时,状态栏会呈现不同的颜色,同时状态栏还会显示当前编辑文件的格式(uft-8等)、文件类型(java、xml等)和光标位置等,喜欢的就装。

如图所示:

安装

  1. 进入.vim/bundle目录;
  2. 执行git clone git://github.com/Lokaltog/vim-powerline.git;
  3. .vimrc中设置状态栏主题

     "powerline{set guifont=PowerlineSymbols\ for\ Powerlineset nocompatibleset t_Co=256let g:Powerline_symbols = 'fancy'"}

vim插件之pathogen,NERDTree,Command-T,Powerline相关推荐

  1. vim 插件_你不得不知道的适用于程序员的VIM插件

    在介绍最常用和最受欢迎的Vim插件之前,让我们首先了解Vim的真正含义.基本上,Vim只是另一个文本编辑器,我们可以使用它来编写和编辑文本,就像通常在Windows或Mac上使用的Sublime Te ...

  2. vim nerdtree 标签_7款vim插件

    作者:QvQ 链接:https://zhuanlan.zhihu.com/p/145793963 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 集成开发环境(IDE ...

  3. Vim配置#Vim插件安装#NERDTree配置

    一.centos系统的Vim安装 普通用户下输入命令:yum -y install vim* 之后输入y,即可等待安装完成. 二.Vim的配置 如果你需要配置vim,只需在Home目录创建一个~/.v ...

  4. 大神是如何装逼的 之 vim插件使用taglist和nerdtree

    本文转载自:http://blog.csdn.net/yaoxingshuai/article/details/51385332 本文主要讲述如何在vim下配置taglist,nerdtree(看代码 ...

  5. Bundle管理Vim插件

    1. 什么是Vundle? Vundle(https://github.com/VundleVim/Vundle.vim)的全称是Vim Bundle,它是一款Vim插件管理工具.Vundle让你可以 ...

  6. 7 款优秀 Vim 插件帮你打造完美 IDE!

    公众号关注 "GitHubDaily" 设为 "星标",每天带你逛 GitHub! 集成开发环境(IDE,Integrated Development Envi ...

  7. 【记录】常用的vim插件及配置和使用

    2019独角兽企业重金招聘Python工程师标准>>> 所有vim插件都使用Vundle进行安装和管理 vim的git插件 Plugin 'tpope/vim-fugitive' L ...

  8. 终端文本编辑神器--Vim命令详解。如何配置使用Vim、Vim插件?

    作者:Mintimate 博客:https://www.mintimate.cn Mintimate's Blog,只为与你分享 文章目录 Vim 发展历史 Vi&Vim Nano&E ...

  9. VIM 插件管理--Vim-plug

    github 上有很多大牛开发出了很多好用的 vim 插件,手动下载安装的话比较麻烦,因此我们需要插件管理器,插件管理器有多种选择, 比如 Vundle Pathogen Vim-plug 我目前在用 ...

最新文章

  1. 程序可以在硬件之间发送吗_你知道硬件、软件工程师之间,还有一个固件工程师吗?...
  2. 构建高可用LVS + keepalived+httpd和双主模型的keepalived方案
  3. 【笔记】基于边缘检测和BP神经网络的大豆杂草识别研究
  4. git 与github 命令行操作与控制
  5. SQLServer数据库,表内存,实例名分析SQL语句
  6. 程序员对辉瑞新冠疫苗的计算解读,这些常识可能你也不知道
  7. 超大ISO文件的分卷刻录方法
  8. android 图片存储读取数据库中,如何在android中存储(位图图像​​)并从sqlite数据库中检索图像?...
  9. Tcl Tutorial 笔记7 ·for incr
  10. linux 编译安装nginx,配置自启动脚本
  11. 对web应用构成安全威胁的错误漏洞
  12. matlab word 查找 词组,matlab搜索word文档
  13. 【游戏开发创新】上班通勤时间太长,做一个任意门,告别地铁与塞车(Unity | 建模 | ShaderGraph | 摇杆 | 角色控制)
  14. 其他笔记 - matlab代码转换为python代码(SMOP、numpy)
  15. 华为云CDN网站加速配置
  16. 【深度学习】BatchSize设置
  17. 英雄联盟手游版(MOBA)游戏体验报告
  18. Zabbix 4.2 支持 Prometheus 数据收集
  19. 空心三角形 C语言版
  20. 微软宣布 IE 浏览器将于 6 月 16 日正式退役,你对它有哪些回忆?

热门文章

  1. 坚定的更稳固的更有信心的脚步,前进。
  2. Discuz!uc.key泄露导致代码注入漏洞uc.php的解决方法
  3. 自制嵌入式操作系统 DAY1
  4. Andriod 电池检测NTC电阻值的软件设定
  5. 可信平台模块TPM(Trusted Platform Module)介绍及tpm-tools安装使用
  6. Boosting方法入门
  7. VUE-CLI/VUE-ROUTER
  8. Revit建模中 构件视图隐藏怎么操作?
  9. 下载stm32f10x标准外设库
  10. Typora编辑MD文档图片失效的问题解决