.vimrc配置文件

来源:互联网 发布:宝贝计划软件下载 编辑:程序博客网 时间:2024/06/05 04:11
set history=200000set autoindentset smarttabset pasteset nocompatible " 关闭 vi 兼容模式syntax on " 自动语法高亮set number " 显示行号set ruler " 打开状态栏标尺set shiftwidth=4 " 设定 << 和 >> 命令移动时的宽度为 4set softtabstop=4 " 使得按退格键时可以一次删掉 4 个空格set tabstop=4 " 设定 tab 长度为 4set nobackup " 覆盖文件时不备份"set autochdir " 自动切换当前目录为当前文件所在的目录set backupcopy=yes " 设置备份时的行为为覆盖set incsearch " 输入搜索内容时就显示搜索结果set hlsearch " 搜索时高亮显示被找到的文本set magic " 设置魔术set hidden " 允许在有未保存的修改时切换缓冲区,此时的修改由 vim 负责保存set guioptions-=T " 隐藏工具栏set guioptions-=m " 隐藏菜单栏set smartindent " 开启新行时使用智能自动缩进set backspace=indent,eol,startset cmdheight=1 " 设定命令行的行数为 1set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\ set t_Co=256"禁止生成临时文件set nobackupset helplang=cn " 设定帮助文档为中文set encoding=utf-8set noswapfile"代码补全 set completeopt=preview,menu"设置标记一列的背景颜色和数字一行颜色一致hi! link SignColumn LineNrhi! link ShowMarksHLl DiffAddhi! link ShowMarksHLu DiffChange"" for error highlight,防止错误整行标红导致看不清highlight clear SpellBadhighlight SpellBad term=standout ctermfg=1 term=underline cterm=underlinehighlight clear SpellCaphighlight SpellCap term=underline cterm=underlinehighlight clear SpellRarehighlight SpellRare term=underline cterm=underlinehighlight clear SpellLocalhighlight SpellLocal term=underline cterm=underline"自动补全inoremap ( ()<ESC>iinoremap ) <c-r>=ClosePair(')')<CR>inoremap { {<CR>}<ESC>Oinoremap } <c-r>=ClosePair('}')<CR>inoremap [ []<ESC>iinoremap ] <c-r>=ClosePair(']')<CR>inoremap " ""<ESC>iinoremap ' ''<ESC>ifunction! ClosePair(char)if getline('.')[col('.') - 1] == a:charreturn "\<Right>"elsereturn a:charendifendfunctionfiletype plugin indent on"打开文件类型检测, 加了这句才可以用智能补全set completeopt=longest,menu"新建.c,.h,.sh,.java文件,自动插入文件头 autocmd BufNewFile *.cpp,*.[ch],*.sh,*.rb,*.java,*.py exec ":call SetTitle()"""定义函数SetTitle,自动插入文件头 func SetTitle()"如果文件类型为.sh文件 if &filetype == 'sh'call setline(1,"\#!/bin/bash")call append(line("."), "")elseif &filetype == 'python'call setline(1,"#!/usr/bin/env python")call append(line("."),"# coding=utf-8")call append(line(".")+1, "")elseif &filetype == 'ruby'call setline(1,"#!/usr/bin/env ruby")call append(line("."),"# encoding: utf-8")call append(line(".")+1, "")endifif expand("%:e") == 'cpp'call setline(1, "#include <iostream>")call append(line("."), "#include <algorithm>")call append(line(".")+1, "#include <cstdio>")call append(line(".")+2, "#include <cstring>")call append(line(".")+3, "")call append(line(".")+4, "using namespace std;")call append(line(".")+5, "")endifif &filetype == 'c'call setline(1, "#include<stdio.h>")call append(line("."), "")endifif expand("%:e") == 'h'call setline(1, "#ifndef _".toupper(expand("%:r"))."_H")call append(line("."), "#define _".toupper(expand("%:r"))."_H")call append(line(".")+1, "#endif /* ".toupper(expand("%:r"))."_H"." */")endifif &filetype == 'java'call setline(1,"public class ".expand("%:r"))call append(line("."),"")endif"新建文件后,自动定位到文件末尾 endfuncautocmd BufNewFile * normal G"在vim编辑sh文件后,自动拥有执行权限"function ModeChange()if getline(1) =~ "^#!"if getline(1) =~ "bin/"silent !chmod a+x <afile>endifendifendfunctionau BufWritePost * call ModeChange()
0 0
原创粉丝点击