vim のインサートモードで行頭をトグルする
vim を使ってて、emacs みたいに C-a で行頭と空白以外の最初の文字を トグルしたかったので作ってみました。
function! ToggleBol() let col = virtcol('.') let cmd = (col == 1) ? '^' : '0' execute "normal! " . cmd endfunction inoremap <C-a> <C-o>:call ToggleBol()<CR>
コメントアウトする時とかに便利かも。
追記
Qiitaのコメント で教えてもらったやり方のがよさそうなので、こっちにも書いときます。
inoremap <expr> <C-a> \ search('^\s\s*\%#', 'bcn') ? "\<C-o>0" : "\<C-o>^"
search とか初めて知ったよ。