![](/img/trans.png)
[英]Why does vim say “Not Connected” when I use a remapped key to access a plugin command
[英]Why does Vim delay on this remapped key? And how do I fix it?
我的vimrc中有以下幾行:
noremap gb vnoremap gb
這些的目標非常明確:每當我按下g時,向左移動一個單詞。
我的問題是在vim執行移動之前有大約1/2秒的延遲。 好像vim正在等我輸入一個加法命令。
我知道vim在期待更多信息時會做這種事情。 但是,這是我唯一一個涉及g的重映射的情況,因此不太可能出現這種情況。
其他人似乎也有類似的問題: 在VIM中重新映射'd'鍵時消除了延遲
但還沒有人提供解決方案。
有什么想法嗎?
如果我這樣做並使用vim -u NONE -N
啟動vim,我無法復制該行為。 進一步看,這似乎是由netrw插件引起的,它映射了gx
鍵以及映射g%
的matchit插件。 (您可以使用:verbose :map g
來查看,如果存在其他可能導致此問題以及它們被定義的地方(通過使用:verbose
),則可以:verbose
。
因此,為了防止這種情況,您應該取消映射這些映射,然后g
工作無延遲。 但正如progo已經說過的那樣,你失去了所有那些漂亮的內置g<x>
命令,因此我不建議將g
映射掉
另請注意,最近的vims具有<nowait>
修飾符,因此您可以執行noremap <nowait> gb
並且不會發生延遲。
但VIM 期待更多的信息。 有一堆普通模式鍵綁定以g
開頭,例如( gg
, gd
, gf
, gq
,...),當然vim必須等到它知道你開始輸入的內容。
這是一種在不破壞大量其他映射的情況下無法真正解決的情況。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.