2011-11-03 62 views
8

當使用h, j, k, l時,有時會發現Vim中的文檔遍歷速度太慢。 有沒有辦法暫時增加這些鍵移動光標的行數/字符數? (IE而不是移動1j,按j將移動3jVim:提高文檔遍歷速度

編輯: 解決方案:

:map <F8> :noremap j 3j <CR> 
:map <S-F8> :noremap j j <CR> 

我想這樣的事情,這樣我可以輕鬆地瀏覽代碼較長機構認爲我不一定熟悉它。這種方法使我可以在「瀏覽」模式和「編碼」模式之間輕鬆切換。

回答

18

雖然可能(使用:noremap j 3j回車:noremap j j輸入恢復),它可能不是很長的有益改變這些鍵的行爲。

在Vim中有很多種導航方式。當然,您可以使用全屏顯示使用CtrlFCtrlB

在執行導航之前,您可以像您提到的那樣輸入多個移動。

您也可以直接去使用特定行:輸入,例如。

如果您看到要導航到的文本,請使用/後面跟着文字。

對於ħ,可以用b瓦特,和ë,和連續的非空白更快地導航字邊界與W¯¯,和E

+0

感謝您的幫助!回答了我的問題。 +1 –

12

嘗試Ctrl + D/Ctrl + U和Ctrl + F/B(分別向上/向下,向前/向後)。

這些遍歷文檔比h,j,k,l快得多。

+0

謝謝你。我想我不久前遇到過這個,忘了它。這對於未來的編碼肯定會有幫助。 –

+0

這裏值得注意的是,您可以通過第一次傳遞計數(或設置「滾動」選項)來設置「C-u」和「C-d」滾動的行數。任何後續的印刷機也將使用此計數而不必再次通過。 –

5

@Bryan Ross建議的是完全正確的。我想補充一點。使用relativenumber,它將幫助您更高效地使用jk

+4

非常好,謝謝你。我認爲我最喜歡Vim的是,無論我學到多少東西,總有其他很酷的功能潛藏在我身邊去嘗試。 –

1

由Jay回答已經足夠了,我想添加以下內容!

在vim中有很多種不同的導航方式(其中h,j,k,l只是線路導航)。一些較有:

  • 屏導航
  • SPL導航
  • 搜索導航
  • 字導航

轉寄此寫出來,找出快捷鍵做到這一點:Essential Vim editor navigation

1

另一件有用的事情是打開行號(:set number)。如果你在哪裏,你需要去看看行號在屏幕上看到,它只是G.

如果應對塊碼,%即你移動到匹配的括號,括號等

如果你處理的文件有很多古怪的字符,t,T,f和F是非常有用的。

-1

我知道有很多vim技巧可以快速遍歷,但對我來說最舒適的是一個機械鍵盤,當你按住按鈕時,重複率會提高,從而增加j或k的重複次數等等。遍歷也會快捷。 (太好了!) 但是,當你有你的vimrc時它很煩人,但沒有你的鍵盤,所以不是一個通用的解決方案。