vim自定义设置

       可以选择需要的功能添加至 ~/.vimrc 打开注释使之生效。

" 让 vim 关闭所有扩展的功能,尽量模拟 vi 的行为。
set nocompatible
" 默认是8色的,开启256色支持
set t_Co=256
" 突出显示当前行,即横线
set cursorline
" 隐藏工具栏
set guioptions-=T
" 隐藏菜单栏
set guioptions-=m
" 设置在状态行显示的信息
set foldcolumn=0
" 不要使用vi的键盘模式,而是vim自己的
set nocompatible
" 语法高亮
set syntax=on
" 去掉输入错误的提示声音
set noeb
" Tab键的宽度
set tabstop=4
" 统一缩进为4
set softtabstop=4
" 历史记录数
set history=1000
" 禁止生成临时文件
set nobackup
" 禁止生成临时文件
set noswapfile
" 搜索忽略大小写
set ignorecase
" 搜索逐字符高亮
set hlsearch
" 输入搜索内容时就显示搜索结果
set incsearch
" 高亮显示匹配的括号
set showmatch
" 匹配括号高亮的时间(单位是十分之一秒)
set matchtime=1
" 光标移动到buffer的顶部和底部时保持3行距离
set scrolloff=3
" 输入的命令显示出来,看的清楚些
set showcmd
" 打开状态栏标尺
set ruler
" filetype on
" 开始折叠
" set foldenable
" 显示行号
" set number
" 通过使用: commands命令,告诉我们文件的哪一行被改变过
" set report=0
" 设置魔术
" set magic
" 设置当文件被改动时自动载入
" set autoread
" 代码补全
" set completeopt=preview,menu
" 允许插件
" filetype plugin on
" 共享剪贴板
" set clipboard=unnamed
" 从不备份
" set nobackup
" make 运行
" set makeprg=g++\ -Wall\ \ %
" 自动保存
" set autowrite
" set foldmethod=indent
" set foldlevel=3
" 在处理未保存或只读文件的时候,弹出确认
" set confirm
" 自动缩进
" set autoindent
" set cindent
" 把tabs转换成空格
" set shiftwidth=4
" 不要用空格代替制表符
" set noexpandtab
" 在行和段开始处使用制表符
" set smarttab
" 行内替换
" set gdefault
" 为C程序提供自动缩进
" set smartindent
" 可以在buffer的任何地方使用鼠标(类似office中在工作区双击鼠标定位,鼠标选择)
" set mouse=a
" 为了使代码风格尽量保持一致,一般不允许在代码使用TAB符,而以4个空格代之。如下只在编辑c和cpp文件时实行这种设置了
" autocmd FileType c,cpp set shiftwidth=4 | set expandtab
" 在被分割的窗口间显示空白,便于阅读
" set fillchars=vert:\ ,stl:\ ,stlnc:\
" 允许backspace和光标键跨越行边界,方向键自动换行
" set whichwrap+=<,>,h,l
" 我的状态行显示的内容(包括文件类型和解码)
" set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")}
" set statusline=[%F]%y%r%m%*%=[Line:%l/%L,Column:%c][%p%%]
" 总是显示状态行
" set laststatus=2
" 命令行(在状态行下)的高度,默认为1,这里是2
" set cmdheight=2
" 状态栏定义
" set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\ " 映射全选+复制 ctrl+a
map <C-A> ggVGY
" 选中状态下 Ctrl+c 复制
vmap <C-c> "+y "新建.c,.h,.sh,.java文件,自动插入文件头
autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java exec ":call SetTitle()"
func SetTitle()
if &filetype == 'sh'
call setline(1, "#!/bin/bash")
call append(line("."), "# File Name: ".expand("%"))
call append(line(".")+1, "# Intro: *****")
call append(line(".")+2, "# mail: *****@163.com")
call append(line(".")+3, "# Created Time: ".strftime("%c"))
call append(line(".")+4, "#-------------------------------")
call append(line(".")+5, "")
else
call setline(1, "/*************************************************************************")
call append(line("."), " > File Name: ".expand("%"))
call append(line(".")+1, " > Intro: *****")
call append(line(".")+2, " > Mail: *****@163.com")
call append(line(".")+3, " > Created Time: ".strftime("%c"))
call append(line(".")+4, " ************************************************************************/")
call append(line(".")+5, "")
endif
if &filetype == 'cpp'
call append(line(".")+6, "#include<iostream>")
call append(line(".")+7, "using namespace std;")
call append(line(".")+8, "")
endif
if &filetype == 'c'
call append(line(".")+6, "#include<stdio.h>")
call append(line(".")+7, "")
endif
endfunc
" 新建文件后,自动定位到文件末尾
autocmd BufNewFile * normal G

最新文章

  1. ASP.NET OAuth:access token的加密解密,client secret与refresh token的生成
  2. Livermore心法--策略篇
  3. Java Web之Servlet技术
  4. [poj2406] Power Strings
  5. Node.js执行存储过程
  6. centos7忘记root密码修改方式
  7. 在PLSQL中编译复杂的java(转)
  8. Metasploit自动攻击和选择模块攻击详解
  9. Linux 下没有 my.cnf 文件的解决方式,完全是我自己整的,好多教程都是瞎扯的 (zhuan)
  10. Git的学习总结和使用时遇到的问题。
  11. 从客户端中检测到有潜在危险的 request
  12. percona监控模板图形解释
  13. MySQL percona-toolkit工具包的使用教程
  14. iphone 6s pp助手 越狱
  15. 【牛腩新闻公布系统】WebForms UnobtrusiveValidationMode 须要“jquery”ScriptResourceMapping。
  16. 动态操作表格行(兼容IE、火狐)
  17. pycharm+django之小试牛刀
  18. 福州大学软件工程1916|W班 第2次作业成绩排名
  19. jsp下载文件的实现方法及注意事项 (转)
  20. A - 小希的迷宫

热门文章

  1. 用iptables实现代理上网
  2. Tomcat_startup
  3. 4.Grafana展示监控数据
  4. POJ 1789 Truck History (Kruskal)
  5. Django框架(十八)—— CBV源码分析、restful规范、restframework框架
  6. 使用 C++ 编写的基础 Windows 服务 (CppWindowsService)
  7. linux python3换pip 源
  8. live555库得编译、移植、应用
  9. tac - 反转显示文件
  10. NFS(网络文件系统)