1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242
| " 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://www.sunshanlu.com' " " " 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
|