vim配置(使用Vundle)
1.前言
Vim的配置文件位于~/.vimrc
,文件使用VimScript语法来编写。
2. vim插件管理
Vundle是一个全自动的插件管理器,让我们通过维护插件列表的方式管理插件。它为安装、更新、删除插件提供了方便的命令。Vundle也是我们唯一需要手动安装的插件。
$ mkdir .vim
$ git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
$ vim ~/.vimrc
打开配置文件,先忽略其他内容,将以下内容粘贴到文件顶部:
"Vundle Section Start
set nocompatible
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
" ADD YOUR PLUGIN
call vundle#end()
filetype plugin indent on
"Vundle Section End
我们无需关心这些代码做了什么,只需要知道,接下来如果需要安装插件,只要把插件添加在 " ADD YOUR PLUGIN
的位置就可以了。插件在该位置的统一格式是:Plugin 'path'
其中,path的格式分为三种:
- 第一种是github仓库中的插件,安装时可以省略github域名。例如github.com/scrooloose/nerdtree,可以写为
'/scrooloose/nerdtree'
。 - 第二种是虽然在github仓库中,却是在非git仓库中的插件,这时就需要传入合适的参数,例如github.com/rstacruz/sparkup仓库中,
- Vim插件在该仓库的vim文件夹中,这时的格式为:
'rstacruz/sparkup', {'rtp': 'vim/'}
。这一功能也可以用来安装不同版本的同一插件,例如''ascenator/L9', {'name': 'newL9'}'
。 - 第三种是位于vim官方插件列表中的插件,也就是github.com/vim-scripts中的插件,这部分可以直接输入插件名。例如github.com/vim-scripts/L9,可以直接写为
'L9'
- 第四种是不在github上的git插件,此时要使用git前缀,并写全仓库名称和地址,例如:
'git://git.example.com/example.git'
- 第五种是本地插件,此时使用file前缀,并写上绝对路径,例如:
'file:///User/me/path/to/plugin'
添加好插件列表之后,我们就需要安装插件了。先在任意位置进入Vim$ vim
,然后输入指令:PluginInstall
即可。
Vundle内置了一些实用的命令让我们管理插件:
:PluginList "列出列表中的插件
:PluginInstall "安装插件
:PluginInstall! "更新插件
:PluginUpdate "更新插件
:PluginSearch foo "查找名中含有foo的插件
:PluginSearch! foo "查找前清除本地缓存
:PluginClean "清理不在列表中的插件
:PluginClean! "清理时不需用户同意
如果你发现有些插件不再需要了,只需要在插件列表中删除它,然后重启Vim,输入:PluginClean
,Vundle就会帮我们删除它。
3.安装ctags和csope
sudo apt-get install ctags
sudo apt-get install cscope
参考文献
1.https://saul-mirone.github.io/2017/06/20/vim-config/
2.https://blog.csdn.net/amoscykl/article/details/80616688
3.http://blog.wangjinle.com/posts/00e87c3d0f40340b.html
4.https://coolshell.cn/articles/5426.html, vim常用操作
5.http://www.wklken.me/posts/2014/10/03/vim-resources.html, vim相关资源
vim配置(使用Vundle)的更多相关文章
- VIM配置
Linux下的编辑器以vim和emacs为主流,一个编辑器之神,一个是神的编辑器. 本文以主要介绍如何在linux下以vim为基础搭建一个比较顺手的代码编辑器. 有两种比较流行的方式: 自动安装 手动 ...
- vim插件管理vundle备忘
转自:http://blog.csdn.net/jiaolongdy/article/details/17889787/ http://www.cnblogs.com/xia520pi/archive ...
- Vim插件管理——Vundle
Vim插件管理--Vundle 都说Vim时程序员写给自己的编辑器,其中的情结可想而知.身为一只程序狗CodingDoge,今天就让我带各位学习Vim的使用. vim因为其庞大而强劲的插件受到无比的推 ...
- Vim配置及说明——IDE编程环境
Vim配置及说明——IDE编程环境 Vim配置及说明——IDE编程环境 1.基本及字体 2.插件管理 3.主题风格 4.窗口设置 5.目录树导航 6.标签导航 7.taglist 8.多文档编辑 9. ...
- fedora下vim配置
一.安装 1)dnf安装 fedora22以下 sudo yum install vim fedora22及以上 sudo dnf install vim 如果遇到下面类似的错误 .gz from : ...
- 将VIM配置成强大的IDE(二)
将VIM配置成强大的IDE(二) 前面我们已经安装好了vundle这一款强大的插件管理工具. 下面,当然是配置我们需要的插件了. 在VIM下面通过命令 help vundle 我们可以知道,VUNDL ...
- 大神的vim配置
大神的vim配置,O(∩_∩)O spf13-vim : Steve Francia's Vim Distribution __ _ _____ _ ___ _ __ / _/ |___ / __ _ ...
- Vim配置C++
当前用户的Vim配置便存储在文件 ~/.vimrc 中,该文件的每一行便是一个配置项 设置自动换行,在配置文件中加入如下代码: syntax onset tabstop=4set softtabsto ...
- Vim配置及使用技巧
要说Linux下比较好用的文本编辑器,我推荐vim(当然很多人都用emacs,可我没用过),用vim也有一年左右,有些心得体会想与诸位分享.在我的学习过程中,借鉴了不少优秀的博客,其中有csdn大神n ...
随机推荐
- 20175310 《Java程序设计》第9周学习总结
20175310 <Java程序设计>第9周学习总结 本周博客:https://www.cnblogs.com/xicyannn/p/10785915.html 教材学习内容总结 这周学习 ...
- Kafka 详解(三)------Producer生产者
在第一篇博客我们了解到一个kafka系统,通常是生产者Producer 将消息发送到 Broker,然后消费者 Consumer 去 Broker 获取,那么本篇博客我们来介绍什么是生产者Produc ...
- Golang 入门系列(六)理解Go中的协程(Goroutine)
前面讲的都是一些Go 语言的基础知识,感兴趣的朋友可以先看看之前的文章.https://www.cnblogs.com/zhangweizhong/category/1275863.html. 今天就 ...
- SQL Server之深入理解STUFF
前言 最近项目无论查询报表还是其他数据都在和SQL Server数据库打交道,对于STUFF也有了解,但是发现当下一次再写SQL语句时我还得查看相关具体用法,说到底还是没有完全理解其原理,所以本节我们 ...
- .Net Core应用框架Util介绍(一)
距离上次发文,已经过去了三年半,这几年技术更新节奏异常迅猛,.Net进入了跨平台时代,前端也被革命性的颠覆. 回顾 2015年,正当我还沉迷于JQuery + EasyUi的封装时,突然意识到技术已经 ...
- pyspider爬虫框架webui简介-爬取阿里招聘信息
命令行输入pyspider开启pyspider 浏览器打开http://localhost:5000/ group表示组名,几个项目可以同一个组名,方便管理,当组名修改为delete时,项目会在一天后 ...
- Webdriver获取多个元素
官方通过如下代码获取多个元素: List<WebElement> inputs = driver.findElements(By.xpath("//input")); ...
- Android——图片轮播
Android技术——轮播功能 轮播需要什么? 答:实现图片与广告语展示.循环播发以及手动切换.支持加载本地与网络图片. 性能优化? 答:多张图片与指示器展示.自动与定时.循环播发.滑动流畅并且无卡顿 ...
- SpringMVC DispatcherServlet在配置Rest url-pattern的一点技巧
SpringMVC的Controller中已经有了@RequestMapping(value = "detail.do", method = RequestMethod.GET)的 ...
- CAN报文 Intel 格式与Motorola 格式的区别
当一个信号的数据长度不超过 1 个字节(8 位)时,Intel 与 Motorola 两种格式的 编码结果没有什么不同,完全一样.当信号的数据长度超过 1 个字节(8 位)时,两者的编码结果出现 了明 ...