2012-01-05 121 views
8

使我對VIM瞭解最多的事情之一是在插入模式下移動。與其他任何程序,我可以使用箭頭鍵移動,但與VIM我學會了使用h/j/k/l,並​​且爲了進入該模式,我必須按下轉義,然後我再次,是否有更快的方法去做?VIM在插入模式下導航

+2

vim的一般租戶是不能在插入模式下導航的。將大寫鎖定映射到ESC以便更容易地退出插入模式很常見。另一個普通的vim租戶是儘可能少地插入模式。 – 2012-01-05 21:22:43

+0

請參閱「誤解#1」 http://www.viemu.com/a-why-vi-vim.html – 2012-01-05 21:27:10

+0

我覺得你剛纔應該訓練肌肉記憶=) – ck3g 2012-01-05 21:57:31

回答

11

我有我的逃生按鈕映射到jj。

imap jj <ESC> 

時,我想進入正常模式快,我槍王JJ和我的手指是在一個很好的位置,啓動導航的方式。

它可能看起來笨拙開始,但一旦你的肌肉記憶,它會像閃電。

+1

如果你需要插入「JJ」,你慢慢做吧? – 2012-01-05 21:25:38

+0

是的,這是正確的,這是非常罕見的2個字母需要在一起,但是當他們是我必須按慢 – zode64 2012-01-05 21:27:30

+0

我確實已經映射了jj,我想我沒有考慮太多。此外,我發現這個答案,這有助於更進一步:http://stackoverflow.com/questions/1737163/vim-traversing-text-in-insert-mode – 2012-01-05 21:30:13

2

使用CTRL- [

這裏有一個建議(可能是從布拉姆)在insert.txt幫助文件爲:H i_CTRL- [

「注意:如果您的密鑰是很難按鍵盤上,訓練自己使用CTRL- [。「

2

您可以使用Ctrl + C從插入模式退出。添加事項到你的vimrc文件有一個警告:如果你在遠程服務器上,它們不起作用。

1

如果你有你的vimrc文件中的一行,看起來像set term=ansi,其註釋掉。一旦我這樣做了,我可以用箭頭鍵導航插入模式沒問題。

4

通過鍵入^ O進行導航,可以暫時退出插入模式。有用於過去自動插入的右括號。

大多數時候VIM的理解頁移動按鈕,如果你的終端是衆所周知的了。原來的vi沒有,而且這個命令一直在那裏。

有用的肌肉記憶:

^烏 - 停止及以下開行,大寫的O高於 ^ OA - 轉到線的末端,並進行插入 ^ OI - 開始在行的開頭插入

順便說一句:

我用的的System V的方式VI回來,至少23年前。個人覺得vi的理念很有趣。這是一個由單獨的編碼員匆忙編寫的ex的實用替代品。它的實用主義就是爲什麼它能夠存活下來,因爲它很容易移植到任何Unix上。爲了獲得最佳效果,您應該學習如何使用f,t,逗號和分號 - 當您將它們與c一起使用時,它們可以爲您節省大量的工作量。

+2

我正在做同樣的事情跳過近括號,直到我發現輸入封閉的括號本身只會把我帶過去而不插入一個新的,非常有用! – maxymoo 2017-03-21 22:22:26