vim学习及插件

参见:http://www.cnblogs.com/caixu/p/6337926.html

.vimrc配置

"**********************************************
"*****************Part1 Base *****************
"**********************************************
"关闭兼容模式, 即不要使用vi的键盘模式
set nocompatible


"设置行号显示与否
set nu
"设置自动缩进
set autoindent
"设置缩进宽度
set shiftwidth=4
"为C程序提供自动缩进
set smartindent


"设置所有的Tab和缩进为4和空格
set tabstop=4
"使得按退格键一次可以删除4个空格
set softtabstop=4


"设置 C/C++ 语言的具体缩进方式
"set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s


"设置退格
"set backspace=indent,eol,start


"激活鼠标的使用
set mouse=a


"molokai原始背景色
let g:molokai_original = 1
"设置molokai
let g:rehash256 = 1
"vim开启256色支持
set t_Co=256
"设置颜色
"colorscheme desert
colorscheme molokai
"设置背景色
set background=dark


"当文件在外部被更改时,自动更新该文件
"set autoread


"显示匹配的括号
"set showmatch


"解决复制粘帖格式错乱问题
set paste
"set pastetoggle=<F9>


"开启语法
set syntax=on


"侦测文件类型
filetype on
"载入文件类型插件
filetype plugin on
"为特定文件类型载入相关缩进文件
filetype indent on


"搜索时高亮显示搜索到的内容
set hlsearch
"在搜索时,输入的词句的逐字符高亮
set incsearch
"高亮显示当前行
set cursorline


"设置按照语法折叠 syntax:用语法高亮来定义折叠
set foldmethod=syntax
"设置折层数
set foldlevel=100
"设置折叠区域的宽度
set foldcolumn=2


"设置编码
set encoding=utf-8
"设置终端编码
set termencoding=utf-8
"设置文件编码
set fileencoding=gb2312
"按顺序使用fileencodings 中的编码进行尝试解码, 解决文件编码识别与乱码处理
set fileencodings=ucs-bom,utf-8,cp936,ansi,prc


"搜索时不区分大小写
"set ignorecase


"支持跨行移动或者删除
set whichwrap=b,s,<,>,[,]


"在命令模式下使用 Tab 自动补全的时候,将补全内容使用一个漂亮的单行菜单形式显示出来
set wildmenu


"设置状态行格式
set statusline=%<[%F]%y%r%m%*%=[%l,%c][%p%%]
"显示状态栏, 默认值为1:表示无法显示状态栏
"set laststatus=2
"设置在编辑过程中右下角显示光标的行列信息
set ruler
"在左下角的状态栏显示 --INSERT-- 之类的字眼
set showmode


"**********************************************
"*****************Part2 Plugin*****************
"**********************************************
"======ctags
map <F5> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR>
map <F2> :cw<CR>
map <F3> :ccl<CR>
set tags=tags;/


"ctrl-] jump to the function definition
"ctrl-t or ctrl-o jump to the laster pointer position


"======taglist
"不同时显示多个文件的tag,仅显示一个
let Tlist_Show_One_File=1
"taglist为最后一个窗口时,退出vim
let Tlist_Exit_OnlyWindow=1


"======cscope
"ctrl-\s find string include declare
"ctrl-\c find all call, not include declare
"把Cscope的查找结果输出到quickfix窗口
set cscopequickfix=s-,g-,c-,d-,i-,t-,e-


"======Winmanager, NERDTree, MiniBufExplorer
"可以用<C-h,j,k,l>切换到上下左右的窗口
let g:miniBufExplMapWindowNavVim = 1
"是用<C-箭头键>切换到上下左右窗口中去
let g:miniBufExplMapWindowNavArrows = 1
"<C-Tab>,<C-S-Tab>切换
let g:miniBufExplMapCTabSwitchBufs = 1
let g:miniBufExplModSelTarget = 1
let g:miniBufExplMoreThanOne=0


let g:NERDTree_title="[NERDTree]"
let g:winManagerWindowLayout="NERDTree|TagList"

function! NERDTree_Start()
exec 'NERDTree'
endfunction

function! NERDTree_IsValid()
return 1
endfunction

nmap wm :WMToggle<CR>



"function! Zoom ()
" " check if is the zoomed state (tabnumber > 1 && window == 1)
" if tabpagenr('$') > 1 && tabpagewinnr(tabpagenr(), '$') == 1
" let l:cur_winview = winsaveview()
" let l:cur_bufname = bufname('')
" tabclose
"
" " restore the view
" if l:cur_bufname == bufname('')
" call winrestview(cur_winview)
" endif
" else
" tab split
" endif
"endfunction

显示效果图:

VIM学习二: VIM配置代码及效果图的更多相关文章

  1. AgileEAS.NET SOA 中间件平台5.2版本下载、配置学习(二):配置WinClient分布式运行环境

    一.前言 AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平台.用于帮助中小型软件企业建立一条适合市 ...

  2. 我用Emacs,后来转向Vim——Vim学习之Vim键盘图(绝对值得珍藏)

    Emacs本来就比较臃肿,麻烦.当我发现Vim键盘图时,我就渐渐转向Vim,追随Unix/Linux哲学去了.. 我用了Emacs三个月,因为它的学习曲线没Vim陡,这点吸引了,我使用Linux才7. ...

  3. springboot深入学习(二)-----profile配置、运行原理、web开发

    一.profile配置 通常企业级应用都会区分开发环境.测试环境以及生产环境等等.spring提供了全局profile配置的方式,使得在不同环境下使用不同的applicaiton.properties ...

  4. Jetty学习二:配置概览-怎么配置Jetty

    Jetty POJO配置 Jetty的核心组件是Plain Old Java Objects(POJOs):配置Jetty的大部分工作就是在Jetty POJOs上的初始化.装配和设置域的处理,你能通 ...

  5. AgileEAS.NET SOA 中间件平台5.2版本下载、配置学习(三):配置ActiveXForm运行环境

    一.前言 AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平台.用于帮助中小型软件企业建立一条适合市 ...

  6. vim学习、各类插件配置与安装

    vim学习.各类插件配置与安装 vim 插件 配置 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶书籍<vim实用技巧>.注:进阶书籍可以在 ...

  7. vim学习、各类插件配置与安装【转】

    转自:https://www.cnblogs.com/forest-wow/p/6916531.html 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶 ...

  8. Linux学习系列之Linux入门(二)Vim学习

    第二篇 Vim学习 主要内容: 基本命令: 插件扩展: 参考资料: vim是一个命令控制的文本编辑器,可以完成几乎我们想要做的所有工作,除了Emacs几乎没有其他的工具能和它匹敌.官方网站是:http ...

  9. linux学习(二)-----Linux 的目录结构、远程登录、vi和vim

    linux目录结构 基本介绍 linux 的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此 目录下再创建其他的目录. 目录结构具体介绍 Linux 目录总结 1.lin ...

随机推荐

  1. Disable access to Windows Update

    Disable access to Windows Update If this policy setting is enabled, all Windows Update features are ...

  2. Java源码阅读顺序

    阅读顺序参考链接:https://blog.csdn.net/qq_21033663/article/details/79571506 阅读源码:JDK 8 计划阅读的package: 1.java. ...

  3. what API can do

    APIs for manipulating documents loaded into the browser. The most obvious example is the DOM (Docume ...

  4. 在vue中调用echarts中的地图散点图~

    首先!当然是在vue中引入echarts! 命令行  npm install echarts --save 在main.js文件中里引入        import echarts from 'ech ...

  5. 【JAVA】servlet执行流程

    servlet执行流程 客户端发出http请求,web服务器将请求转发到servlet容器,servlet容器解析url并根据web.xml找到相对应的servlet,并将request.respon ...

  6. licode测试

    https://github.com/lynckia/licode/tree/master/test 使用js模拟客户端调用,也可以使用mocha来进行同样的测试

  7. vue-文字块收缩与展开功能

    在设计图中要求的效果为: 文字限制超过9行即隐藏,并显示“展开”按钮,点击按钮进行切换,控制文本全部展示和部分展示 在原本的实现过程中,使用了红框内的判断方式: 页面代码: 样式则规定嵌套元素给一个死 ...

  8. TCP协议,UDP,以及TCP通信服务器的文件传输

    TCP通信过程 下图是一次TCP通讯的时序图.TCP连接建立断开.包含大家熟知的三次握手和四次握手. 在这个例子中,首先客户端主动发起连接.发送请求,然后服务器端响应请求,然后客户端主动关闭连接.两条 ...

  9. 在公网上的Linux,我的一些配置分享

    前言 去年的时候,有一篇介绍在vultr上搭建ss服务器的文章,由于某些众所周知的原因,被阿里云删除. 后来有段时间使用vps,配合<鸟哥私房菜>,学习实操linux.当时我以为只要roo ...

  10. spark streamingcontext

    一个StreamingContext定义之后,必须做以下几件事情:1.通过创建输入DStream来创建输入数据源.2.通过对DStream定义transformation和output算子操作,来定义 ...