Splitで移動時に必須なマッピング

.vimrcのmapのおはなし(備忘録)

週末に入門viとhttp://www.ac.cyberhome.ne.jp/~yakahaira/vimdoc/usr_40.html#40.1を読んだ。
mapの意味がようやくわかった。

        :map            ノーマルモード、ビジュアルモード、オペレータ待機モード
        :vmap           ビジュアルモード
        :nmap           ノーマルモード
        :omap           オペレータ待機モード
        :map!           インサートモード、コマンドライン
        :imap           インサートモード
        :cmap           コマンドライン

知らなかった点

本題のmapでぐぐってたらたどり着いたvimrc。

かなりUKテイストなfaviconのページなんですが非常にすばらしい。
長くなるvimrcは悪とか言ってる人も世の中にはいますが、すごく役に立って素晴らしいvimrcもあります。
よく読んでいくと感動と共に感服しました。

http://linuxbrit.co.uk/downloads/dot.vimrc
.vimrc

" ===================================================================
" Mapping of special keys - arrow keys and function keys.
" ===================================================================
" Buffer commands (split,move,delete) -
" this makes a little more easy to deal with buffers.
map <F5>  :split<C-M>
map <F6>  :bp<C-M>
map <F7>  :bn<C-M>
"map <F8> :bd<C-M>

map <C-Down>  <C-w>j
map <C-Up>    <C-w>k
map <C-Left>  <C-w>h
map <C-Right> <C-w>l
map <C-j> <C-W>j<C-w>_
map <C-k> <C-W>k<C-w>_
map <C-h> <C-w>h<C-w>_
map <C-l> <C-w>l<C-w>_

" <Tab> is bound to `complete'
inoremap <tab> <c-p>
" 
" cycle fast thru buffers ...
nnoremap <C-n> :bn<CR>
nnoremap <C-p> :bp<CR>
"
" cycle fast thru errors ...
map <m-n> :cn<cr>
map <m-p> :cp<cr>


sp、vsp時の移動が超絶に楽になります。

map <C-j> <C-W>j<C-w>_
map <C-k> <C-W>k<C-w>_
map <C-h> <C-w>h<C-w>_
map <C-l> <C-w>l<C-w>_


タブキーで補完してくれるなんてすばらしい。

" <Tab> is bound to `complete'
inoremap <tab> <c-p>