aboutsummaryrefslogtreecommitdiffhomepage
path: root/vim/init/keymaps.vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim/init/keymaps.vim')
-rw-r--r--vim/init/keymaps.vim12
1 files changed, 7 insertions, 5 deletions
diff --git a/vim/init/keymaps.vim b/vim/init/keymaps.vim
index aefb337..82c3c07 100644
--- a/vim/init/keymaps.vim
+++ b/vim/init/keymaps.vim
@@ -50,7 +50,7 @@ map <leader>pp :setlocal paste!<CR>
50 50
51" Copy from system clipboard 51" Copy from system clipboard
52nnoremap <leader>P :r !xsel -ob<CR> 52nnoremap <leader>P :r !xsel -ob<CR>
53vnoremap Y :w !xsel -ib<CR> 53vnoremap Y "+y
54 54
55" Move one line up and down 55" Move one line up and down
56nnoremap <C-j> ddp 56nnoremap <C-j> ddp
@@ -81,6 +81,8 @@ nnoremap <leader>S [s
81" Show full path by default 81" Show full path by default
82nnoremap <C-g> 1<C-g> 82nnoremap <C-g> 1<C-g>
83 83
84nnoremap S S<ESC>
85
84" Translate by Google API 86" Translate by Google API
85vnoremap Tz :!trans -t zh-TW -b<CR> 87vnoremap Tz :!trans -t zh-TW -b<CR>
86vnoremap Te :!trans -t en-US -b<CR> 88vnoremap Te :!trans -t en-US -b<CR>
@@ -478,14 +480,14 @@ vnoremap ` <ESC>`<i`<ESC>`>la`<ESC>
478vnoremap Q <ESC>`<i「<ESC>`>la」<ESC> 480vnoremap Q <ESC>`<i「<ESC>`>la」<ESC>
479 481
480function! AddSpaceForSelection() 482function! AddSpaceForSelection()
481 if line("'<") == line("'>") 483 if line("'<") != line("'>") || (col("'<") == 1 && col("'>") == len(getline('.'))+1)
484 '< norm! O
485 '> norm! o
486 else
482 call cursor('.', col("'<")) 487 call cursor('.', col("'<"))
483 execute "norm! i\<space>" 488 execute "norm! i\<space>"
484 call cursor('.', col("'>")+1) 489 call cursor('.', col("'>")+1)
485 execute "norm! a\<space>" 490 execute "norm! a\<space>"
486 else
487 '< norm! O
488 '> norm! o
489 endif 491 endif
490endfunction 492endfunction
491vnoremap <space> :<C-u>call AddSpaceForSelection()<CR> 493vnoremap <space> :<C-u>call AddSpaceForSelection()<CR>