最近自分のvimrcを見直したのでメモ程度に晒しておきます.
.vimrc
"=============" vim設定 "=============" エンコードsetencoding=utf8
" ファイルエンコードsetfileencoding=utf-8" シンタックスハイライトsyntaxon" 行番号を表示setnumber" タブ幅settabstop=4" タブ幅(編集時)setsofttabstop=4" インデント幅setshiftwidth=4" インデントをshiftwidthの倍数に丸めるsetshiftround" 改行時に前の行のインデントを継続するsetautoindent" □や○文字が崩れる問題を解決setambiwidth=double
" 現在の行を強調setcursorline" 不可視文字を表示setlist" 不可視文字を表示setlistchars=tab:»-,trail:-,extends:»,precedes:«,nbsp:%,eol:↲
" compatibleオプションをオフにするsetnocompatible" 右下に表示される行・列の番号を表示するsetruler" .swapファイルを作らないsetnoswapfile" バックアップファイルを作らないsetnowritebackup" バックアップをしないsetnobackup" バックスペースで各種消せるようにするsetbackspace=start,eol,indent
"ビープ音すべてを無効にするsetvisualbellt_vb=setnoerrorbells"エラーメッセージの表示時にビープを鳴らさない" 対応括弧に<と>のペアを追加setmatchpairs& matchpairs+=<:>" 対応括弧をハイライト表示するsetshowmatch" 対応括弧の表示秒数を3秒にするsetmatchtime=3" ウィンドウの幅より長い行は折り返され、次の行に続けて表示されるsetwrap" 文章の折り返し地点を見やすくするsetshowbreak=↪
" 変更中のファイルでも、保存しないで他のファイルを表示sethidden" 新しく開く代わりにすでに開いてあるバッファを開くsetswitchbuf=useopen
" 補完の際の大文字小文字の区別しないsetinfercase" 小文字の検索でも大文字も見つかるようにするsetignorecase" ただし大文字も含めた検索の場合はその通りに検索するsetsmartcase" インクリメンタルサーチを行うsetincsearch" 検索結果をハイライト表示sethlsearch" ESCキー2度押しでハイライトの切り替えnnoremap<silent><Esc><Esc> :<C-u>setnohlsearch!<CR>" マウスモード有効setmouse=a" xtermとscreen対応setttymouse=xterm2
" コマンドモードの補完setwildmenu" コマンド、検索パターンを10000個まで履歴に残すsethistory=10000" ステータスラインを常に表示(0:表示しない、1:2つ以上ウィンドウがある時だけ表示)setlaststatus=2" 現在のモードを表示setshowmode" コマンドを画面最下部に表示するsetshowcmd" 移動コマンドを使ったとき、行頭に移動しないsetnostartofline" スクロールする時に下が見えるようにするsetscrolloff=5" ファイルを開いたときに最後にカーソルがあった場所に移動する
augroup vimrcEx
auBufRead * if line("'\"")>0&& line("'\"")<= line("$")|
\ exe "normal g`\""|endif
augroup END
"-----------" キー設定"-----------" j, k による移動を折り返されたテキストでも自然に振る舞うように変更nnoremapj gj
nnoremapk gk
" jjでエスケープinoremap<silent> jj <ESC>" 日本語入力で”っj”と入力してもEnterキーで確定させればインサートモードを抜ける"inoremap <silent> っj <ESC>inoremap<silent>jj <ESC>" Shift + 矢印でウィンドウサイズを変更nnoremap<S-Left><C-w><<CR>nnoremap<S-Right><C-w>><CR>nnoremap<S-Up><C-w>-<CR>nnoremap<S-Down><C-w>+<CR>" TABにて対応ペアにジャンプnnoremap<Tab> %
vnoremap<Tab> %