いつも使っているvimの設定をさらす。
どこのプロジェクト行っても同じものを毎回設定するのがめんどくさいのでメモした。
設定のPoint
痒いところに手が届くような最低限だけ設定するようにしている。
- デフォルトだと検索時の背景と文字のカラーが見にくい
- 検索時に大文字小文字を無視したい
行番号を表示とかは必要な場合のみやっているので設定には含めていない。
./vimrc
設定を開く
vi ~/.vimrc
設定内容
"****************************************************************" 検索"****************************************************************" 大文字小文字を区別しないset ignorecase
" 小文字で検索するとき、大文字と小文字を無視set smartcase
" ファイル末尾まで進んだら、先頭へジャンプset wrapscan
" インクリメンタル検索 (検索ワードの最初の文字を入力した時点で検索が開始)set incsearch
" 検索結果をハイライト表示set hlsearch
hi Search ctermbg=lightyellow
hi Search ctermfg=Black
" Escの2回押しでハイライト消去
nnoremap <Esc><Esc>:nohlsearch<CR><ESC>"****************************************************************" バックアップ"****************************************************************" ファイルを上書きする前にバックアップを作ることを無効化set nowritebackup
set nobackup
" スワップファイルを作成しないsetnoswapfile"****************************************************************" 移動"****************************************************************" vim の矩形選択で文字が無くても右へ進めるset virtualedit=block
" 行をまたいで移動set whichwrap=b,s,h,l,<,>,[,],~"****************************************************************" 表示設定"****************************************************************" エラーのときビープを鳴らさないset noerrorbells
" 対応する括弧やブレースを表示set showmatch matchtime=1" 行末のスペースを可視化set listchars=tab:^\ ,trail:~" コマンドラインの履歴を5000件保存するsethistory=5000" コメントの色を水色hi Comment ctermfg=3" yでコピーした時にクリップボードに入るset guioptions+=a" タイトルを表示set title
" ヤンクでクリップボードにコピーset clipboard=unnamed,autoselect
" 対応する括弧を強調表示set showmatch
"****************************************************************" マクロ的な何か..."****************************************************************" 自動でvimrcの設定が反映される
augroup source-vimrc
autocmd!
autocmd BufWritePost *vimrc source $MYVIMRC |set foldmethod=marker
autocmd BufWritePost *gvimrc if has('gui_running') source $MYGVIMRC
augroup END
" auto comment off
augroup auto_comment_off
autocmd!
autocmd BufEnter * setlocal formatoptions-=r
autocmd BufEnter * setlocal formatoptions-=o
augroup END
" HTML/XML閉じタグ自動補完
augroup MyXML
autocmd!
autocmd Filetype xml inoremap <buffer></ </<C-x><C-o>
autocmd Filetype html inoremap <buffer></ </<C-x><C-o>
augroup END
" 編集箇所のカーソルを記憶if has("autocmd")
augroup redhat
" In text files, always limit the width of text to 78 characters
autocmd BufRead *.txt set tw=78" When editing a file, always jump to the last cursor position
autocmd BufReadPost *
\if line("'\"")>0&& line ("'\"")<= line("$")| \ exe "normal! g'\""| \endif
augroup END
endif