回答:
以下の.vimrcによるから抜粋がある
^[[1~
押すことによって作成されたctrl+v
とHome
"jump to first non-whitespace on line, jump to begining of line if already at first non-whitespace
map <Home> :call LineHome()<CR>:echo<CR>
imap <Home> <C-R>=LineHome()<CR>
map ^[[1~ :call LineHome()<CR>:echo<CR>
imap ^[[1~ <C-R>=LineHome()<CR>
function! LineHome()
let x = col('.')
execute "normal ^"
if x == col('.')
execute "normal 0"
endif
return ""
endfunction
Andrew Sohnの答えを拡張して、この動作に0を使用したい場合は、次のようにラップしてください:
function! LineHome()
let x = col('.')
execute "normal ^"
if x == col('.')
unmap 0
execute "normal 0"
map 0 :call LineHome()<CR>:echo<CR>
endif
return ""
endfunction
0
コメントの+1