" An example for a vimrc file. " " To use it, copy it to " for Unix and OS/2: ~/.vimrc " for Amiga: s:.vimrc " for MS-DOS and Win32: $VIM\_vimrc " for OpenVMS: sys$login:.vimrc
" When started as "evim", evim.vim will already have done these settings. if v:progname =~? "evim" finish endif
" Use Vim settings, rather then Vi settings (much better!). " This must be first, because it changes other options as a side effect. set nocompatible
" allow backspacing over everything in insert mode set backspace=indent,eol,start
if has("vms") set nobackup " do not keep a backup file, use versions instead else set backup " keep a backup file endif set history=50 " keep 50 lines of command line history set ruler " show the cursor position all the time set showcmd " display incomplete commands set incsearch " do incremental searching "========================================================================== "My Setting-sunshanlu "========================================================================== vmap <leader>y :w! /tmp/vitmp<CR> nmap <leader>p :r! cat /tmp/vitmp<CR>
"语法高亮 syntax enable syntax on "显示行号 set nu
"修改默认注释颜色 "hi Comment ctermfg=DarkCyan "允许退格键删除 "set backspace=2 "启用鼠标 set mouse=a set selection=exclusive set selectmode=mouse,key "按C语言格式缩进 set cindent set autoindent set smartindent set shiftwidth=4
" 允许在有未保存的修改时切换缓冲区 "set hidden
" 设置无备份文件 set writebackup set nobackup
"显示括号匹配 set showmatch "括号匹配显示时间为1(单位是十分之一秒) set matchtime=5 "显示当前的行号列号: set ruler "在状态栏显示正在输入的命令 set showcmd
set foldmethod=syntax "默认情况下不折叠 set foldlevel=100 " 开启状态栏信息 set laststatus=2 " 命令行的高度,默认为1,这里设为2 set cmdheight=2
" 显示Tab符,使用一高亮竖线代替 set list "set listchars=tab:\|\ , set listchars=tab:>-,trail:-
"侦测文件类型 filetype on "载入文件类型插件 filetype plugin on "为特定文件类型载入相关缩进文件 filetype indent on " 启用自动补全 filetype plugin indent on
"设置编码自动识别, 中文引号显示 filetype on "打开文件类型检测 "set fileencodings=euc-cn,ucs-bom,utf-8,cp936,gb2312,gb18030,gbk,big5,euc-jp,euc-kr,latin1 set fileencodings=utf-8,gb2312,gbk,gb18030 "这个用能很给劲,不管encoding是什么编码,都能将文本显示汉字 "set termencoding=gb2312 set termencoding=utf-8 "新建文件使用的编码 set fileencoding=utf-8 "set fileencoding=gb2312 "用于显示的编码,仅仅是显示 set encoding=utf-8 "set encoding=utf-8 "set encoding=euc-cn "set encoding=gbk "set encoding=gb2312 "set ambiwidth=double set fileformat=unix
"设置高亮搜索 set hlsearch "在搜索时,输入的词句的逐字符高亮 set incsearch
" 着色模式 set t_Co=256 "colorscheme wombat256mod "colorscheme gardener "colorscheme elflord colorscheme desert "colorscheme evening "colorscheme darkblue "colorscheme torte "colorscheme default
" 字体 && 字号 set guifont=Monaco:h10 "set guifont=Consolas:h10
" :LoadTemplate 根据文件后缀自动加载模板 "let g:template_path='/home/ruchee/.vim/template/'
" :AuthorInfoDetect 自动添加作者、时间等信息,本质是NERD_commenter && authorinfo的结合 ""let g:vimrc_author='sunshanlu' ""let g:vimrc_email='sunshanlu@baidu.com' ""let g:vimrc_homepage='http: " " " Ctrl + E 一步加载语法模板和作者、时间信息 ""map <c-e> <ESC>:AuthorInfoDetect<CR><ESC>Gi ""imap <c-e> <ESC>:AuthorInfoDetect<CR><ESC>Gi ""vmap <c-e> <ESC>:AuthorInfoDetect<CR><ESC>Gi
" ======= 引号 && 括号自动匹配 ======= " " ":inoremap ( ()<ESC>i
":inoremap ) <c-r>=ClosePair(')')<CR> " ":inoremap { {}<ESC>i " ":inoremap } <c-r>=ClosePair('}')<CR> " ":inoremap [ []<ESC>i " ":inoremap ] <c-r>=ClosePair(']')<CR> " ":inoremap < <><ESC>i " ":inoremap > <c-r>=ClosePair('>')<CR> " "":inoremap " ""<ESC>i " ":inoremap ' ''<ESC>i " ":inoremap ` ``<ESC>i " ":inoremap * **<ESC>i
" 每行超过80个的字符用下划线标示 ""au BufRead,BufNewFile *.s,*.asm,*.h,*.c,*.cpp,*.java,*.cs,*.lisp,*.el,*.erl,*.tex,*.sh,*.lua,*.pl,*.php,*.tpl,*.py,*.rb,*.erb,*.vim,*.js,*.jade,*.coffee,*.css,*.xml,*.html,*.shtml,*.xhtml Underlined /.\%81v/ " " " For Win32 GUI: remove 't' flag from 'guioptions': no tearoff menu entries " let &guioptions = substitute(&guioptions, "t", "", "g")
" Don't use Ex mode, use Q for formatting map Q gq
" This is an alternative that also works in block mode, but the deleted " text is lost and it only works for putting the current register. "vnoremap p "_dp
" Switch syntax highlighting on, when the terminal has colors " Also switch on highlighting the last used search pattern. if &t_Co > 2 || has("gui_running") syntax on set hlsearch endif
" Only do this part when compiled with support for autocommands. if has("autocmd")
" Enable file type detection. " Use the default filetype settings, so that mail gets 'tw' set to 72, " 'cindent' is on in C files, etc. " Also load indent files, to automatically do language-dependent indenting. filetype plugin indent on
" Put these in an autocmd group, so that we can delete them easily. augroup vimrcEx au!
" For all text files set 'textwidth' to 80 characters. autocmd FileType text setlocal textwidth=80
" When editing a file, always jump to the last known cursor position. " Don't do it when the position is invalid or when inside an event handler " (happens when dropping a file on gvim). autocmd BufReadPost * \ if line("'\"") > 0 && line("'\"") <= line("$") | \ exe "normal g`\"" | \ endif
augroup END
else
set autoindent " always set autoindenting on
endif " has("autocmd")
" 增加鼠标行高亮 set cursorline hi CursorLine cterm=NONE ctermbg=darkred ctermfg=white
" 设置tab是四个空格 set ts=4 set expandtab
" 主要给Tlist使用 let Tlist_Exit_OnlyWindow = 1 let Tlist_Auto_Open = 1
|