Vimを使っているけど,モードの切り替えなんてめんどくさい!
Macのショートカットキーをそのまま使いたい!
という人のために挿入モード中にMacのControlキーショートカットを使えるように設定してみました.
Ctrl+Kの挙動以外はそのままマップするだけです.
また今回は,友人が必要だと思ったものだけ設定しています.
.vimrc
function! Expand_delete_line()if getline('.')==''|| matchstr(getline('.'),'.',col('.'))==''
normal gJ
else
normal d$$
endifendfunctionsetvirtualedit=onemore
inoremap<C-a><C-o>^
inoremap<C-e><C-o>$
inoremap<C-f><C-o>linoremap<C-b><C-o>hinoremap<C-p><C-o>kinoremap<C-n><C-o>jinoremap<C-d><C-o>xinoremap<silent><nowait><C-k><C-o>:<C-u>call Expand_delete_line()<CR>
参考文献
VimScriptざっくりチュートリアル(関数編)
[Vim] カーソル位置の文字を取得 + Vim における文字列について
vimで最終行が空行だったら保存時に最終行を削除する方法
Macが異常に捗るControlキーショートカットまとめ