VIM是写代码的神器,个人觉得比sublime更强,详情http://zh.wikipedia.org/wiki/Vim。如果用网游做类比,没有经过打造的VIM,也只能算是一只非常有潜力的0级宠物,经过写配置文件安装插件才能打造出极品的VIM。

VIM的配置文件名字须为.vimrc或vimrc,Linux下放置的位置:$HOME/.vimrc,或者$HOME/.vim/vimrc。

$HOME,也就是个人文件夹的路径

查看配置文件合适的放置路径的方法,在Linux终端的命令行输入vim,按下enter键进入vim编辑界面,在命令行模式输入:help vimrc,会出现详细的文档说明。

.vimrc的配置分为基础配置插件配置 , 基础配置设置VIM的编写格式,而插件配置则安装各种功能各异的插件。

"关闭vi的一致性模式 避免以前版本的一些Bug和局限
set nocompatible "鼠标控制vim的光标移动
set mouse=a "设置背景色
set bg=dark
"配置vim的配色方案
colorscheme molokai "配置backspace键工作方式
set backspace=indent,eol,start "显示行号
set number
"设置在编辑过程中右下角显示光标的行列信息
set ruler
"当一行文字很长时取消换行
"set nowrap "在状态栏显示正在输入的命令
set showcmd "设置历史记录条数
set history=1000 "设置取消备份,禁止临时文件生成
set nobackup
set noswapfile "突出现时当前行列
set cursorline
"set cursorcolumn "设置匹配模式,类似当输入一个左括号时会匹配相应的右括号
set showmatch "开启新行时自动缩进
set smartindent "设置C/C++方式自动对齐
set autoindent
set cindent "开启语法高亮功能
syntax enable
set cindent "突出显示当前行
set cursorline "设置搜索内容时就显示搜索结果
set incsearch "设置插入括号时短暂的跳转到匹配的对应括号
set showmatch
"短暂跳转到匹配括号的时间
set matchtime=2 "选中状态下Ctrl+c系统复制,与系统剪贴板共用
vmap <C-c> "+y filetype off "自定义关联文件类型
au BufNewFile,BufRead *.less set filetype=css
au BufNewFile,BufRead *.phtml set filetype=php
au BufRead,BufNewFile *.js set ft=javascript.jquery

我的基础配置

插件配置从安装vundle开始,vundle是一款流行的插件管理工具,非常好用,不过不是万能的,还是有些插件需要手动安装,比如molokai,把molokai.vim手动挂在.vim/colors上。vundle的安装方法:https://github.com/gmarik/vundle

注意:.vimrc文件配置如下即可:

set nocompatible
filetype off set rtp+=~/.vim/bundle/vundle/
call vundle#rc() Bundle 'gmarik/vundle'
filetype plugin indent on

注:以下部分引用自http://avnpc.com/pages/vim-of-allovince

vundle的使用,在vim的命令行模式下:

  :BundleList 列出已经安装的插件

  :BundleInstall 安装所有配置文件中的插件  

  :BundleInstall! 更新所有插件

  :BundleSearch 搜索插件

  :BundleClean! 根据配置文件删除插件

set rtp+=~/.vim/bundle/vundle/
call vundle#rc() Bundle 'gmarik/vundle' "==================================HTML=========================================
Bundle 'mattn/emmet-vim'
Bundle 'othree/html5.vim'
Bundle 'othree/html5-syntax.vim'
Bundle 'gmarik/vim-markdown'
Bundle 'suan/vim-instant-markdown' "==================================JAVASCRIPT===================================
Bundle 'scrooloose/syntastic'
Bundle 'jQuery'
Bundle 'vim-scripts/nginx.vim'
Bundle 'pangloss/vim-javascript'
Bundle 'vim-scripts/jsbeautify'
Bundle 'leshill/vim-json' "==================================CSS==========================================
Bundle 'wavded/vim-stylus'
Bundle 'groenewege/vim-less'
Bundle 'hail2u/vim-css3-syntax'
Bundle 'bolasblack/csslint.vim'
Bundle 'JulesWang/css.vim'
Bundle 'lilydjwg/colorizer' "=================================AutoComplete==================================
Bundle 'Shougo/neocomplcache.vim'
Bundle 'SirVer/ultisnips'
Bundle 'vim-scripts/AutoClose' "=================================Color=========================================
Bundle 'tomasr/molokai'
Bundle 'altercation/vim-colors-solarized' "=================================Tool==========================================
Bundle 'shemerey/vim-project'
Bundle 'tpope/vim-commentary'
Bundle 'tpope/vim-surround'
Bundle 'nathanaelkane/vim-indent-guides'
Bundle 'kien/ctrlp.vim'
Bundle 'Markdown'
Bundle 'Markdown-syntax'
Bundle 'php.vim-html-enhanced'
Bundle 'pangloss/vim-javascript'
Bundle 'scrooloose/nerdtree' "=================================Git===========================================
Bundle 'gmarik/github-search.vim'
Bundle 'tpope/vim-fugitive' filetype plugin indent on

我的插件配置,这个参考了同事的bundle

基础配置和插件配置合起来就是一个完整的.vimrc文件

vundle的bunble书写规则:

1、指定一个github上的项目名,以作者/项目的形式,这个很常见,通常作者和项目可以在git网页的标题那看到。

Bundle 'gmarik/vundle'

2、指定一个完整的git repos地址

Bundle 'https://github.com/tomasr/molokai.git'

3、官方移植的Vim Script,只需要在配置中写脚本的名字

Bundle 'neocomplcache'

推荐的文章:

http://linux-wiki.cn/wiki/zh-hans/%E7%94%A8Vim%E7%BC%96%E7%A8%8B%E2%80%94%E2%80%94%E9%85%8D%E7%BD%AE%E4%B8%8E%E6%8A%80%E5%B7%A7

http://avnpc.com/pages/vim-of-allovince

http://blog.jobbole.com/46966/

https://github.com/wklken/k-vim

http://blog.csdn.net/wklken/article/details/9076621

VIM配置与管理的更多相关文章

  1. acm的ubuntu (ubuntu16.04 安装指南,chrome安装,vim配置,git设置和github,装QQ)

    日常手贱把ubuntu14.04更新到了16.04,然后就game over了.mdzz,不然泥萌也看不到这篇博客了=.= 然后花了些时间重装了一个16.04版的,原来那个14.04的用可以用,就是动 ...

  2. 快速学习C语言三: 开发环境, VIM配置, TCP基础,Linux开发基础,Socket开发基础

    上次学了一些C开发相关的工具,这次再配置一下VIM,让开发过程更爽一些. 另外再学一些linux下网络开发的基础,好多人学C也是为了做网络开发. 开发环境 首先得有个Linux环境,有时候家里机器是W ...

  3. mysql多实例的配置和管理

    原文地址:mysql多实例的配置和管理 作者:飞鸿无痕 多实例mysql的安装和管理 mysql的多实例有两种方式可以实现,两种方式各有利弊.第一种是使用多个配置文件启动不同的进程来实现多实例,这种方 ...

  4. VIM配置相关记录

    把一直使用中的vim配置做个GIT入库管理,也把之前积累在机器上的文档,做个汇总. https://github.com/wujuguang/kyvim 1. 安装完整版vim vi和vim的区别?在 ...

  5. Vim配置及说明——IDE编程环境

    Vim配置及说明——IDE编程环境 Vim配置及说明——IDE编程环境 1.基本及字体 2.插件管理 3.主题风格 4.窗口设置 5.目录树导航 6.标签导航 7.taglist 8.多文档编辑 9. ...

  6. Env:VIM配置

    注:文章来自于http://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html 花了很长时间整理的,感觉用起来很方便,共享一下. 我的vim配 ...

  7. Vim配置IDE开发环境

    我的vim IDE界面: 1.安装Vim和Vim基本插件首先安装好Vim和Vim的基本插件.这些使用apt-get安装即可:lingd@ubuntu:~/arm$sudo apt-get instal ...

  8. VIM配置(转载)

    注: 转载于http://www.cnblogs.com/ma6174/ 花了很长时间整理的,感觉用起来很方便,共享一下. 我的vim配置主要有以下优点: 1.按F5可以直接编译并执行C.C++.ja ...

  9. Vim Vundle 插件管理器

    /********************************************************************** * Vim Vundle 插件管理器 * 说明: * 话 ...

随机推荐

  1. 2016总结 wjwdive

    2016 成长:收获最大的,学会了耐心,学会了宽容,学会了不强求.一念放下,万般自在.我真的是晚熟啊 ^_^! . 读书:<小王子>.<了不起的盖茨比>.<和任何人都聊得 ...

  2. T2 Func<in T1,out T2>(T1 arg)

    委托调用方法的4种方式. using System; using System.Collections.Generic; namespace ConsoleApplication1 { delegat ...

  3. Unity透明材质Batch

    NO Batch  ? 游戏场景中存在大量例子的时候,DrallCall的压力很大,但是遍历一遍之后发现,为啥一样的粒子特效竟然没有合并,why?经过很多测试后发现,如果把透明材质的修改为非半透明的, ...

  4. Vue.js双向绑定的实现原理

    Vue.js最核心的功能有两个,一是响应式的数据绑定系统,二是组件系统.本文仅探究几乎所有Vue的开篇介绍都会提到的hello world双向绑定是怎样实现的.先讲涉及的知识点,再参考源码,用尽可能少 ...

  5. TID大会学习心得之软技能

    软技能(Personal development as a software developer) John Sonmez : Simple programmer的创始人 2.1 学习方法 学习不是一 ...

  6. 转:HAR(HTTP Archive)规范

    HAR(HTTP Archive),是一个用来储存HTTP请求/响应信息的通用文件格式,基于JSON.这个格式的出现可以使HTTP监测工具以一种通用的格式导出所收集的数据,这些数据可以被其他支持HAR ...

  7. Java局部变量

    局部变量是在方法被执行时创建,在方法执行结束时被销毁.局部变量在使用时必须进行赋值操作或被初始化,否则会出现编译错误. 在相互不嵌套的作用域中可以同时声明两个名称,类型相同的局部变量, public ...

  8. js中的逻辑与(&&)和逻辑或(||)(转载)

    var a = 2; var b = 3; var andflag = a && b ; var orflag = a || b; 问andflag 和orflag 分别是什么? 起初 ...

  9. 用jsonp格式的数据进行ajax post请求变成get

    因为 dataType 是 jsonp 而不是 json jsonp不支持POST跨域,所以会自动转成GET而关于jsonp为什么不支持post请求,百度到的答案是jsonp为动态的script,没有 ...

  10. Linux下查看Nginx安装目录、版本号信息?

    Linux环境下,怎么确定Nginx是以那个config文件启动的? 输入命令行: ps  -ef | grep nginx 摁回车,将出现如下图片: master process 后面的就是 ngi ...