" ============================================== " key mapping " ============================================== map! <NUL> <CR> " 括弧の補完 " cohama/lexima.vim を代わりに使う " inoremap {<Enter> {}<Left><CR><ESC><S-o> " inoremap [<Enter> []<Left><CR><ESC><S-o> " inoremap (<Enter> ()<Left><CR><ESC><S-o> " クォートの補完 " inoremap " ""<LEFT> " inoremap ' ''<LEFT> " タグジャンプ " nnoremap <C-h> :vsp<CR> :exe("tjump ".expand('<cword>'))<CR> " nnoremap <C-k> :split<CR> :exe("tjump ".expand('<cword>'))<CR> " ================= " ハイライト消し " ================= " EscEscで検索ハイライトを消す nnoremap <ESC><ESC> :nohlsearch<CR><Esc> " ================= " emacs風に " ================= "imap <C-k> <ESC>d$i "imap <C-y> <ESC>pi "imap <C-d> <ESC>xi "imap <C-a> <Home> "imap <C-e> <End> "imap <C-b> <Left> "imap <C-f> <Right> "imap <C-n> <Down> "imap <C-p> <UP> " ================= " tab 操作をwindowっぽく " ================= nnoremap <C-t><C-t> :tabprevious<CR> inoremap <C-t><C-t> <Esc>:tabprevious<CR> nnoremap <C-t>h :tabprevious<CR> inoremap <C-t>h <Esc>:tabprevious<CR> nnoremap <C-t><C-h> :tabprevious<CR> inoremap <C-t><C-h> <Esc>:tabprevious<CR> nnoremap <C-t>l :tabnext<CR> inoremap <C-t>l <Esc>:tabnext<CR> nnoremap <C-t><C-l> :tabnext<CR> inoremap <C-t><C-l> <Esc>:tabnext<CR> " ================= " 修羅の道 " ================= vnoremap <Up> <Nop> vnoremap <Down> <Nop> vnoremap <Left> <Nop> vnoremap <Right> <Nop> inoremap <Up> <Nop> inoremap <Down> <Nop> inoremap <Left> <Nop> inoremap <Right> <Nop> noremap <Up> <Nop> noremap <Down> <Nop> noremap <Left> <Nop> noremap <Right> <Nop> " ================= " neoshippets " ================= imap <C-k> <Plug>(neosnippet_expand_or_jump) smap <C-k> <Plug>(neosnippet_expand_or_jump) xmap <C-k> <Plug>(neosnippet_expand_target) inoremap <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>" " ================= " nerdtree " ================= nnoremap <silent><C-e> :NERDTreeToggle<CR> " ================= " windowのResize(Tmux風) " ================= " resize current buffer by +/- 5 nnoremap <C-w>H :vertical resize -5<cr> nnoremap <C-w>J :resize +5<cr> nnoremap <C-w>K :resize -5<cr> nnoremap <C-w>L :vertical resize +5<cr> nnoremap H :vertical resize -5<cr> nnoremap J :resize +5<cr> nnoremap K :resize -5<cr> nnoremap L :vertical resize +5<cr> " ================= " windowのResize(Tmux風) " ================= " tagbar window nmap <F9> :TagbarToggle<CR> " ================= " その他 " ================= " vim-node file jump autocmd User Node \ if &filetype == "javascript" | \ nmap <buffer> <C-w>f <Plug>NodeVSplitGotoFile | \ nmap <buffer> <C-w><C-f> <Plug>NodeVSplitGotoFile | \ endif " jsdoc nmap <silent> <C-m> <Plug>(jsdoc) " ================= " インクリメンタルサーチ " ================= map / <Plug>(incsearch-forward) map ? <Plug>(incsearch-backward) map g/ <Plug>(incsearch-stay) " ================= " Caw(コメントアウト用) " ================= " コメントアウト用( tabもしくはC-iでコメントout) nmap <C-i> <Plug>(caw:hatpos:toggle) vmap <C-i> <Plug>(caw:hatpos:toggle) " ================= " Denite " ================= " ファイルタイプを変更する nmap <silent> <C-j><C-t> :<C-u>Denite filetype<CR> " 同一内検索 nmap <silent> <C-j><C-j> :<C-u>Denite line<CR> " 全文検索 nmap <silent> <C-j><C-g> :<C-u>Denite grep<CR> " 全文検索(プレビュー) nmap <silent> <C-j><C-p> :<C-u>Denite -auto_preview grep<CR> " ヘルプ nmap <silent> <C-j><C-h> :<C-u>Denite help<CR> " コマンド nmap <silent> <C-j><C-c> :<C-u>Denite command<CR> " ファイルを開く用(rec: Recursive?) nmap <silent> <C-j><C-f> :<C-u>Denite file_rec<CR> " ファイルを開く用(mru: Most Recently Used) nmap <silent> <C-j><C-u> :<C-u>Denite file_mru<CR> " ヤンク履歴 nmap <silent> <C-j><C-y> :<C-u>Denite neoyank<CR> " 前回のDeniteバッファを再表示する nmap <silent> <C-j><C-r> :<C-u>Denite -resume<CR>