我一直在使用vim很多年,從來沒有真正想過。我的一位朋友問這是爲什麼,注意到在我們的文化中,左側通常會映射到右側,而右側會映射到下方,從而使vim鍵向後移動。我知道他們在家裏排隊,這意味着你不必將手指移動到任何地方打他們,但這完全是另一回事。基本上,我的問題是:有誰知道爲什麼這些鍵被賦予他們目前的目的?如果你能指出我有關決定的一些文件,那將是非常好的。在vim中,爲什麼'j'用於down和'k'用於up?
回答
答案在wikipedia entry for vi。編寫ex的可視模式(最終成爲vim前體vi)的Bill Joy使用了Lear Siegler ADM3A終端,其中H,J,K,L鍵映射到左,右,上,右 - 並且它是從此以後。
這裏的鍵盤佈局:
在ADM3A佈局中的幾個音符的其他點:
- 左派的Q:Esc鍵 - 比它稍微更加便利今天在鍵盤上,因此是在普通模式和插入模式之間切換的好選擇。
- 右上:'Home'鍵作爲代字符(〜)加倍,後來成爲Unix用戶主目錄的縮寫。
這是一個總猜測,但是:Ctrl + J字符是「換行」字符,它在傳統的TTY上向下移動一行,提供助記符。 K恰好位於Qwerty鍵盤旁邊,位於原位置時位於右手第二常用手指之下。
vimtutor
提供了'J'看起來像一個向下指向的箭頭的助記符,儘管這可能是也可能不是它被選中的原始原因。
爲什麼-1這個?這很有趣,並回答了這個問題。 –
另一個助記符是'j'有[下](http://en.wikipedia.org/wiki/Descender),而'k'有[上升](http://en.wikipedia.org/wiki/Ascender_(排版))。 – hammar
我一直認爲這是因爲在DVORAK佈局上,j和k也彼此相鄰。這裏並不是說有兩個德沃夏克A/QWERTY/Z
該問題實際上是關於**爲什麼使用在這樣的佈局中,向下和K向上**(爲什麼不K向下?)。 – sunquan
從用戶體驗的角度來看,這財產多鑰匙,打開文件後,你總是向下移動第一和向下移動通常是一個更加頻繁操作。由於從左到右是我們大多數人的自然方向,因此將您首次或更頻繁執行的任務與左側的鍵相關聯是有意義的。您可以嘗試切換2鍵並嘗試判斷哪種方式更好。對於我來說,「J」倒更自然,更舒適。
- 1. 爲什麼h,j,k,l建議使用vim的方向鍵?
- 2. 如何使用<S-Up>&<S-Down>在Terminal.app和VIM
- 3. Android Studio中的「Lookup Down」和「Lookup Up」操作有什麼作用?
- 4. 用於Ctrl-Up和Ctrl-Down的ASCII代碼
- 5. iptables:選擇pre-up/up/post-up rsp的原因。 pre-down/down/down-
- 6. Migrator.net在Up()中放置表,在Down()中做什麼?
- 7. 什麼是控制器中的Up和Down功能?
- 8. 爲什麼`double i = 3.3,j = 1.1; int k = i/j; printf(「%d \ n」,k);`得到2?
- 9. 使用'j'和'k'導航的vim字完成
- 10. 表達式的結果和解析結果是什麼j + = j- = j * j和j + = j * = j- = j? (倍數等於)
- 11. 爲什麼複製{ctrl down} c {ctrl up}比^ c更安全?
- 12. python catch up/down keypress
- 13. C#form numeric up down
- 14. Button Down&Up事件
- 15. 爲什麼NumberPicker(up-down-domain picker)在Eclipse的Android UI編輯器中不可見?
- 16. 爲什麼〜/ .vimrc在ubuntu服務器上不能用於vim
- 17. 什麼是C#中的一個很好的算法,用於查找是否存在I,J,K,使得某些S的8 * I + J * 12 + K * 15 = S?
- 18. swift爲什麼characters.split用於?爲什麼是用於
- 19. 對WP7使用Up-Down控制?
- 20. 什麼C#等價於「mklink/J」?
- 21. 有什麼辦法可以禁用AS3中textField的「Page Down/Page Up」鍵
- 22. C程序找到UP和DOWN機器。
- 23. 提示和作用於VIM
- 24. jquery spinner widget up/down events
- 25. ftp down/up後的空行
- 26. libgdx button up down no effect
- 27. jQuery Accordion Toggle Slide Up&Down
- 28. 爲什麼gf不適用於vim,但ctrl +]的作品?
- 29. OpsWorks堆棧 - 基於負載的實例根據Cloudwatch警報縮放UP和DOWN
- 30. D-S-Up在vim中意味着什麼?
偉大的問題。我經常想到這一點,但缺乏勇氣去問。 –
引用克羅克福德的話說:「看起來有點愚蠢,但要花很長時間才能把它弄出來。」 :-) http://developer.yahoo.com/yui/theater/video.php?v=crockonjs-2 –
爲什麼在你的觀點中,左通常會映射到上下右。我以前沒有真正想到它,但我覺得它應該是另一回事。可能純粹是因爲我是右撇子(但我們大多數人),所以,也許像這樣,正確的感覺就像正確的一樣。嗯。我只是感興趣,爲什麼你的自然反應是以另一種方式看待它。這當然不是這個討論的地方,但(我想知道在哪裏,心理學。堆棧交換也許 - 如果這樣的地方存在)。 – tjm