我知道,我可以使用:插入模式移到行的開頭,而在插入模式
- 首頁
- Esc鍵 + 我退出插入模式並輸入再次,有效地走到一線的開始。
但既不滿足我。在第一種情況下,我必須傾斜我的頭,以打主頁,因爲我不能盲目打它。在第二種情況下,我的左臂必須離開主隊才能擊中Esc,這也很煩人。
有什麼想法?
我知道,我可以使用:插入模式移到行的開頭,而在插入模式
但既不滿足我。在第一種情況下,我必須傾斜我的頭,以打主頁,因爲我不能盲目打它。在第二種情況下,我的左臂必須離開主隊才能擊中Esc,這也很煩人。
有什麼想法?
Ctrl + O而在插入模式下,您只能進入一個按鍵的命令模式。因此Ctrl + O然後Shift + 我應該完成你要找的東西。
你最好的行動當然是重新映射作用到一個不同的密鑰(見How to remap <Ctrl-Home> to go to first line in file?的想法)
我會想我怎樣經常使用這種「功能」,它accordinly映射到按鍵
您可以使用I
(首都i)進入插入模式。
它會將光標置於行首。
同樣,您可以使用A
在行尾添加一些內容。
雖然它並沒有真正解決在插入模式下移動的問題。
我剛剛檢查了插入模式的幫助,在插入模式下沒有組合鍵在行首開始移動。
其他的想法: 只有在插入模式重新映射一個新的命令
inoremap <C-i> <Home>
T. 我工作正常,但我正在尋求解決方案,以移動到行的開始,而已經在插入模式。 – Valentin
這不直接回答問題,但提供了可能爲大多數人搶佔問題的功能。 –
如果您使用MacOS的終端去首選項...>設置>鍵盤和映射結束鍵爲Ctrl-O $(它顯示爲\ 017 $),然後使用fn + left模擬結束鍵。對主鍵做同樣的操作。逃生序列\ 033 [H也適用於家庭。
fn-Left和fn-Right在默認情況下在vim的mac終端上工作 – Jeff
我已經Ctrl + a和Ctrl + e分別映射到行的開始和結束。這與大多數bash命令行的行爲相匹配。適合我。
inoremap <C-e> <Esc>A
inoremap <C-a> <Esc>I
除非你打算提及二戰很多:)。 – Alexey
已對我來說(包括肌肉記憶和直觀)工作的快捷方式是映射__
(這是雙重_
)「插入當前行的開始」。
理由:
_
已經進入線在vim_
一種很常見的方式不衝突與任何動作(你已經在線的開始)vim腳本:
"insert at start of current line by typing in __ (two underscores)
function DoubleUnderscore()
if v:count == 0 && getcurpos()[2] == 1
:silent call feedkeys('I', 'n')
else
:silent call feedkeys('^', v:count + 'n')
endif
endfunction
nnoremap <silent> _ :call DoubleUnderscore()<CR>
正是這種複雜,因爲很不錯的選擇nnoremap __ _I
會使Vim上按_
_
和__
區分延遲。
ctrl+o then 0
| |
letter number
您可以使用0移動到行首,但不是插入模式。 – manku
如果你發現Esc的效果很好,你可以使用Ctrl- [代替:) – 2011-07-01 08:06:45
或者更好,Ctrl-C的工作方式與Esc類似。甚至更好,將Caps Lock映射到Esc。 –