个人VIM配置实例
用户 vimrc 文件: "$HOME/.vimrc"
" vimrc by lewiyon@hotmail.com
" last update 2013-10-29 " 判断操作系统
if (has("win32")||has("win64")||has("win32unix"))
let g:isWin=1
else
let g:isWin=0
endif " ----------------------------------------------------------
" 常用格式
" ----------------------------------------------------------
" 习惯用“:”作为命令前缀
" let mapleader=","
" 快捷加载vimrc文件
" map <leader>ss :source $HOME/.vimrc<cr>
" 快捷打开编辑vimrc文件
" map <silent> <leader>ee :e $HOME/.vimrc<cr>
" autocmd! bufwritepost *.vimrc source $HOME/.vimrc
" 设置行号
set nu
" tab转化为4个字符
set expandtab
set smarttab
set shiftwidth=4
set tabstop=4
set softtabstop=4
" 恢复上次文件打开位置
" set viminfo='10,\"100,:20,%,n~/.viminfo
if has("autocmd")
autocmd BufReadPost *
\ if line("'\"") > 0 | if line("'\"") <= line("$") |
\ exe("norm '\"") | else|exe "norm $"|
\ endif | endif
endif " 关闭兼容模式
set nocompatible
" 语法高亮
syntax enable
" syntax off
" 文件类型插件
filetype plugin on
filetype indent on
set autoindent
autocmd BufEnter * :syntax sync fromstart
" 显示命令
set showcmd
" 高亮搜索
set hlsearch
" 设置当前行高亮
set nocursorline
" 不使用swp文件
set noswapfile
" 设置记录历史条数
set history=200
" ----------------------------------------------------------
" 断行设置
" ----------------------------------------------------------
" 设置光标超过80时折行
" set tw=80
" 第80列往后加下划线
au BufWinEnter * let w:m2=matchadd('Underlined', '\%>' . 80 . 'v.\+', -1) " ----------------------------------------------------------
" C/C++ 编码设置
" ----------------------------------------------------------
" 设置VIM对文件类型敏感
filetype on
" 设置c缩进风格
autocmd FileType c,cpp,h :setlocal cindent cinoptions=:0,g0,t0
" 设置一次缩进的距离是4个空格
autocmd FileType c,cpp,h :setlocal et sta sw=4 sts=4 tabstop=4
" 设置自动缩进
set autoindent
" 设置智能缩进
set smartindent
" 显示括号配对情况
set sm
" 打开C/C++风格的自动缩进
"autocmd FileType c,cpp,cc
" 设置注释格式
set cindent comments=sr:/*,mb:*,el:*/,://
set cin
" 设置缩进风格
" t0 表示函数返回值与函数名不在同一行,0表示返回值前空一格
set cinoptions=>4,n-2,{4,^-2,:2,=2,g0,h2,p5,t0,+2,(0,u0,w1,m1 " ----------------------------------------------------------
" 状态条总是显示:字节数、列数、行数、当前行等信息
" ----------------------------------------------------------
set laststatus=2
set ruler
set statusline=\ %{HasPaste()}%<%-15.25(%f%)%m%r%h\ %w\ \
set statusline+=\ \ \ [%{&ff}/%Y]
set statusline+=\ \ \ %<%20.30(%{hostname()}:%{CurDir()}%)\
set statusline+=%=%-10.(%l,%c%V%)\ %p%%/%L
function! CurDir()
let curdir = substitute(getcwd(), $HOME, "~", "")
return curdir
endfunction function! HasPaste()
if &paste
return '[PASTE]'
else
return ''
endif
endfunction " -----------------------------------------------------------
" 设置字符集
" -----------------------------------------------------------
set encoding=utf8
set termencoding=utf8
set fileencoding=gb19030
set fileencodings=utf8,utf16,gb2312,gb18030,ucs-bom,big5,latin1 fun! ViewUTF8()
set encoding=utf8
set termencoding=gb19030
endfun fun! UTF8()
set encoding=utf8
set termencoding=utf8
set fileencoding=gb18030
set fileencodings=utf8,utf16,gb2312,gb18030,ucs-bom,big5,latin1
endfun
个人VIM配置实例的更多相关文章
- 快速学习C语言三: 开发环境, VIM配置, TCP基础,Linux开发基础,Socket开发基础
上次学了一些C开发相关的工具,这次再配置一下VIM,让开发过程更爽一些. 另外再学一些linux下网络开发的基础,好多人学C也是为了做网络开发. 开发环境 首先得有个Linux环境,有时候家里机器是W ...
- sphinx 配置实例
配置实例 3.1.数据源. 这里我们采用 mysql的数据源.具体情况如下: Mysql server:192.168.1.10 Mysql db :test Mysql 表:test.sphinx_ ...
- redis配置实例及redis.conf详细说明
一.配置实例 1.redis修改持久化路径.日志路径.清缓存 redis修改持久化路径和日志路径 vim redis.conf logfile /data/redis_cache/logs/redi ...
- Linux下双网卡绑定bond配置实例详解
本文源自:http://blog.itpub.net/31015730/viewspace-2150185/ 一.什么是bond? 网卡bond是通过多张网卡绑定为一个逻辑网卡,实现本地网卡冗余,带宽 ...
- 干货 | Keepalived高可用服务配置实例
一个执着于技术的公众号 Keepalived系列导读 Keepalived入门学习 keepalived安装及配置文件详解 前言 在前面的章节中,我们学习了Keepalived简介.原理.以及Keep ...
- acm的ubuntu (ubuntu16.04 安装指南,chrome安装,vim配置,git设置和github,装QQ)
日常手贱把ubuntu14.04更新到了16.04,然后就game over了.mdzz,不然泥萌也看不到这篇博客了=.= 然后花了些时间重装了一个16.04版的,原来那个14.04的用可以用,就是动 ...
- SVN版本库(访问权限)配置实例笔记
http://blog.csdn.net/zjianbo/article/details/8578297 SVN版本库(访问权限)配置实例笔记 本系列文章由ex_net(张建波)编写,转载请注明出处. ...
- 简单快捷好用的vim配置和终端配置推荐
vim 配置实用spf13-vim,安装方便简单快捷,极力推荐. 另外oh-my-zsh 终端配置很好,与之搭配使用效果更佳. 安装都很简单,一个脚本搞定, 都是在gitHub上开源的,自行搜索,这里 ...
- nginx+tomcat+二级域名静态文件分离支持mp4视频播放配置实例
nginx+tomcat+二级域名静态文件分离支持mp4视频播放配置实例 二级域名配置 在/etc/nginx/conf.d/目录下配置二级域名同名的conf文件,路径改成对应的即可 statics. ...
随机推荐
- 腾讯云数据库团队:SQL Server 数据加密功能解析
数据加密是数据库被破解.物理介质被盗.备份被窃取的最后一道防线:数据加密,一方面解决数据被窃取安全问题,另一方面有关法律要求强制加密数据:SQL Server 的数据加密相较于其他数据库,功能相对完善 ...
- No module named machinery
py2exe模块0.9版本只支持python3以上,要想在python2.7中运用,就要下载0.6 版本的py2exe http://sourceforge.net/projects/py2exe/f ...
- django进阶补充
前言: 这篇博客对上篇博客django进阶作下补充. 一.效果图 前端界面较简单(丑),有两个功能: 从数据库中取出书名 eg: 新书A 在form表单输入书名,选择出版社,选择作者(多选),输入完毕 ...
- 二、Fragment+RadioButton实现底部导航栏
在App中经常看到这样的tab底部导航栏 那么这种效果是如何实现,实现的方式有很多种,最常见的就是使用Fragment+RadioButton去实现.下面我们来写一个例子 首先我们先在activi ...
- ELK5.0安装教程
ELK升级后,安装稍微发生了点变化,在Elasticsearch中增加了很多资源上的限制,其他的倒是没什么变化.不过所有的安装都是基于JDK已经安装完的情况,且为1.8版本. 安装Elasticsea ...
- SQL AlawaysOn 之一:安装域控制器
一.准备阶段 1. 计算机名称命名 2.IP地址修改.DNS修改 IP地址和DNS不一定要和图上的一致,只要固定就行了 二.安装阶段 1.服务器管理器,仪表盘,点击“添加角色和功能” 2.添加角色和 ...
- wireshark过滤规则
WireShark过滤语法 1.过 滤IP,如来源IP或者目标IP等于某个IP 例子:ip.src eq 192.168.1.107 or ip.dst eq 192.168.1.107或者ip.ad ...
- mysq常用l性能分析方法
orzdba查看读写./orzdba.pl --mysql -S /data/mysql30001/mysql.sock 语句查看读写命令数量,以及数据库TPS,传输的大小 查看processlist ...
- 常用PHP函数整理
is_upload_file() 判断文件是不是通过HTTP POST 方式上传来的in_array() 判断变量在不在数组范围内move_uploaded_file() 将上传的临时名移到指定文件夹 ...
- 手机自动化测试:appium源码分析之bootstrap六
手机自动化测试:appium源码分析之bootstrap六 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.poptest测试 ...