2012-07-29 75 views
3

VIMTUTOR說,在其第一課:VIMTUTOR箭頭鍵V/S hjkl

注:光標鍵也應該工作。但是使用hjkl,你將會在 能夠 移動得更快,一旦你習慣了它。真!

但是,我發現它們之間沒有任何區別。使用hjkl v/s箭頭鍵真的有區別嗎?

+6

當您使用hjkl時,您不必將右手從鍵盤上的正常位置移開。就我個人而言,我更喜歡[Neo 2.0鍵盤佈局]的導航塊(http://neo-layout.org) – knittl 2012-07-29 11:18:35

+0

除了「在主線上行動」之外,還有其他一些原因。例如,您不應該在插入模式下使用箭頭。 hjkl會讓您切換到正常模式進行移動。這是一個深入討論的話題 - 如果您搜索,您肯定可以找到更詳細的討論! – 2012-07-30 13:48:30

回答

8

您不必將手從觸摸類型的位置移動到使用hjkl,而使用箭頭鍵則可以。

+0

完全沒問題。 :) – 2012-07-29 11:36:22

+0

例如,當我超過「H」時,我實際上感到手上緊張,並且必須達到「L」,反之亦然。箭頭是專門爲此任務製作的,感覺使用起來更加舒適... – 2014-09-02 22:20:13

+0

重點在於,從觸摸打字位置,這些按鍵就在那裏 - h按食指正確,l在無名指下。 – 2014-09-04 01:54:19

5

事情是,你開始使用「hjkl」鍵作爲移動光標的一種更好的方法,但事實是它們實際上是motions

  • h運動一個字符左
  • j運動下移一行
  • k運動一個排隊
  • l運動一個字符右

因此,例如,用delete運算符ddl刪除當前字符,dh刪除前一個dj刪除當前行及其下方的一行,dk刪除當前行及其上方的行。當然對於y,c,V,gU和任何運營商也是如此。

另一個例子是拆分窗口。您可以通過創建幾個窗口控制-W + 小號控制-W + v,然後使用您值得信賴的hjkl你的窗口之間來回移動,控制-W + ^h移動左邊的一個窗口,Control-w + j移動窗口,等等。

因此,這不僅僅是對箭頭鍵的改進。隨着您對Vim的理解不斷增長,您將會了解到hjkl鍵可以通過多種方式與其他命令結合使用,您將很高興可以使用它們。

+0

+1。 :) – 2013-01-11 09:45:36

+3

但是,大多數(所有?)的功能也可以使用箭頭鍵代替HJKL來完成。 – echristopherson 2013-01-13 06:20:18

1

實際上,使用h j k l按鍵是一種很好的做法,當您必須到達箭頭鍵時,避免在鍵盤上進行大量右手動作,但使用vim可以更有效地瀏覽文本文件:

  • f <char>:轉到當前行上字符<char>的下一次出現。遊標放在角色的上方;
  • t <char>:轉到當前行上字符<char>的下一次出現。遊標放在角色的前面;
  • TF:在這一行後退你的字符搜索,但是T會將光標放在字符後面(或之前如果你想回來;)),並且F將把它放在它的上面。
  • / <char> <Enter>:轉到獨立於行的下一個字符。在您執行此操作後,請按nN進入下一個和上一個發生的操作。
  • ? <char> <Enter>:轉到與行無關的字符的下一個出現處,向後。 n將搜索下一個出現(向後)並且N將會去往前一個。
  • {}:導航段落。段落基本上是由空行劃分的塊。進一步的細節見:help paragraph
  • ( and ):在句子(:help sentence)上前後導航。句子是由. !?結尾的一組words,後跟一個空格,製表符或結束符。
  • e:下word,將光標放置在word
  • w的末尾:下word,將光標放置在的word
  • b開始:背部1 word,將光標置於開始所述word
  • ge:靠背1 word,將光標置於的word
  • E W B和結束10:與e w b ge相同,但是與WORD相同。有關更多詳細信息,請參閱:help word

如果你想通過得到使用h j k l運動或其他運動的第一個良好的生活習慣開始,並避免箭頭鍵,pleace在你的.vimrc文件中以下行你的家將其禁用:

noremap <Up> <NOP> 
noremap <Down> <NOP> 
noremap <Left> <NOP> 
noremap <Right> <NOP>