2012-09-07 126 views
3

我使用Dvorak鍵盤佈局,因此我對默認的VIM映射做了一些調整 - 我做出的一個更改是重新映射右側的主頁行鍵到消除在VIM中重新映射「d」鍵時的延遲

noremap d h 
noremap h j 
noremap t k 
noremap n l 

因此,移動鍵的位置很方便,就像QWERTY用戶一樣。 h,tn他們的工作很好,並且響應速度非常快。 d,然而,滯後一段時間,然後離開它應該的方式。我認爲這是因爲存在以d開頭的鍵序命令(如刪除行爲dd),所以VIM正在等待接收序列中的第二個筆畫,然後執行命令,僅執行一個'd'。我已經重新映射dd

noremap dd hh 

但是,這是不是做的伎倆。然而,對於諸如d3wd$d之後的文本對象)的命令不起作用(在重新映射d之後),因此它們不會導致問題。任何人都知道如何擺脫滯後?順便說一句,即使禁用所有插件後,我也有同樣的問題。在我的vimrc中,我也沒有與d的其他映射。

回答

5

AFAIK,d,c和他們的「運營商待定」朋友不是真的映射。這意味着你不能:unmap d。我相信,如果沒有副作用,你所經歷的延遲是不可避免的。

你可能想玩:h timeout:h timeoutlen

對於它的價值,替代佈局/ Vim的故事是...複雜。 And not settled at all.

+0

嗯...感謝您的鏈接。受到這篇文章中的建議的啓發,我想我可能會嘗試只用一把鑰匙將所有的移動命令移動到正確的位置,以便所有的移動鍵實際上都直接放在我家右邊的右手指下。我已經將'k'重新映射到'd',但是我可以將'd'重新映射到's'。 –