vim插件之pathogen,NERDTree,Command-T,Powerline
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文件夹下。
安装
- 在
.vim
文件夹下建立autoload和bundle目录; - 下载pathogen:https://github.com/tpope/vim-pathogen;
- 把vim-pathogen/autoload/pathogen.vim文件,将其复制到.vim/autoload目录下;
- 在
.vimrc
文件中增加如下代码:call pathogen#infect().
注意事项:
新插件安装到bundle目录下后,如果插件中包含doc,则需要在Vim中运行:Helptags
来生成在线帮助tags。
NERDTree
功能说明:
NERDTree是Vim最常用的插件之一,可以在Vim运行时显示目录和文件结构,类似TextMate左侧的文件浏览器,但操作起来更为方便,你可以在手不离开键盘的情况下快速浏览文件,并在文件和文件夹之间进行切换。
安装
- 进入
.vim/bundle
目录; - 执行
git clone git://github.com/scrooloose/nerdtree.git;
- 下载完成后,在bundle下会多出一个nerdtree的文件夹,所有相关插件都在该文件夹下;
- 在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)功能,可以通过模糊匹配快速定位并打开文件。
安装
- 下载最新vba文件:https://wincent.com/products/command-t;
- 在
~/.vim/bundle
目录下创建文件夹command-t; - 用Vim打开command-t-1.4.vba;
- 执行
:UseVimball ~/.vim/bundle/command-t
; 进入ruby目录下编译C扩展(当然你需要安装ruby)
cd ~/.vim/bundle/command-t/ruby/command-truby extconf.rbmake
使用说明:
输入:CommandT可进入文件快速定位功能,如图所示:
- ctrl+j/k 上下选择文件,选中后回车打开文件
- ctrl+t 以tab方式打开文件
- ctrl+s/v 可以水平或垂直分割窗口打开文件
- 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等)和光标位置等,喜欢的就装。
如图所示:
安装
- 进入
.vim/bundle
目录; - 执行
git clone git://github.com/Lokaltog/vim-powerline.git;
在
.vimrc
中设置状态栏主题"powerline{set guifont=PowerlineSymbols\ for\ Powerlineset nocompatibleset t_Co=256let g:Powerline_symbols = 'fancy'"}
vim插件之pathogen,NERDTree,Command-T,Powerline相关推荐
- vim 插件_你不得不知道的适用于程序员的VIM插件
在介绍最常用和最受欢迎的Vim插件之前,让我们首先了解Vim的真正含义.基本上,Vim只是另一个文本编辑器,我们可以使用它来编写和编辑文本,就像通常在Windows或Mac上使用的Sublime Te ...
- vim nerdtree 标签_7款vim插件
作者:QvQ 链接:https://zhuanlan.zhihu.com/p/145793963 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 集成开发环境(IDE ...
- Vim配置#Vim插件安装#NERDTree配置
一.centos系统的Vim安装 普通用户下输入命令:yum -y install vim* 之后输入y,即可等待安装完成. 二.Vim的配置 如果你需要配置vim,只需在Home目录创建一个~/.v ...
- 大神是如何装逼的 之 vim插件使用taglist和nerdtree
本文转载自:http://blog.csdn.net/yaoxingshuai/article/details/51385332 本文主要讲述如何在vim下配置taglist,nerdtree(看代码 ...
- Bundle管理Vim插件
1. 什么是Vundle? Vundle(https://github.com/VundleVim/Vundle.vim)的全称是Vim Bundle,它是一款Vim插件管理工具.Vundle让你可以 ...
- 7 款优秀 Vim 插件帮你打造完美 IDE!
公众号关注 "GitHubDaily" 设为 "星标",每天带你逛 GitHub! 集成开发环境(IDE,Integrated Development Envi ...
- 【记录】常用的vim插件及配置和使用
2019独角兽企业重金招聘Python工程师标准>>> 所有vim插件都使用Vundle进行安装和管理 vim的git插件 Plugin 'tpope/vim-fugitive' L ...
- 终端文本编辑神器--Vim命令详解。如何配置使用Vim、Vim插件?
作者:Mintimate 博客:https://www.mintimate.cn Mintimate's Blog,只为与你分享 文章目录 Vim 发展历史 Vi&Vim Nano&E ...
- VIM 插件管理--Vim-plug
github 上有很多大牛开发出了很多好用的 vim 插件,手动下载安装的话比较麻烦,因此我们需要插件管理器,插件管理器有多种选择, 比如 Vundle Pathogen Vim-plug 我目前在用 ...
最新文章
- 程序可以在硬件之间发送吗_你知道硬件、软件工程师之间,还有一个固件工程师吗?...
- 构建高可用LVS + keepalived+httpd和双主模型的keepalived方案
- 【笔记】基于边缘检测和BP神经网络的大豆杂草识别研究
- git 与github 命令行操作与控制
- SQLServer数据库,表内存,实例名分析SQL语句
- 程序员对辉瑞新冠疫苗的计算解读,这些常识可能你也不知道
- 超大ISO文件的分卷刻录方法
- android 图片存储读取数据库中,如何在android中存储(位图图像​​)并从sqlite数据库中检索图像?...
- Tcl Tutorial 笔记7 ·for incr
- linux 编译安装nginx,配置自启动脚本
- 对web应用构成安全威胁的错误漏洞
- matlab word 查找 词组,matlab搜索word文档
- 【游戏开发创新】上班通勤时间太长,做一个任意门,告别地铁与塞车(Unity | 建模 | ShaderGraph | 摇杆 | 角色控制)
- 其他笔记 - matlab代码转换为python代码(SMOP、numpy)
- 华为云CDN网站加速配置
- 【深度学习】BatchSize设置
- 英雄联盟手游版(MOBA)游戏体验报告
- Zabbix 4.2 支持 Prometheus 数据收集
- 空心三角形 C语言版
- 微软宣布 IE 浏览器将于 6 月 16 日正式退役,你对它有哪些回忆?