2011-09-01 69 views
1

我有一堆爲vim安裝的插件,其中一個插件正在打破dw命令。我不確定它是哪一個。現在基本上dw現在通過它找到的下一個空白字符刪除所有內容,而不是停止在標點符號上。防止插件重新映射vim中的密鑰

我真的不想弄清楚哪一個是打破它,以及如何解決它。有沒有一種方法可以在我的.vimrc中指定我不想更改它?

編輯:

呂克已經回答了我的問題,但我想我還是會明確它爲未來的讀者,因爲有過什麼dw應該在默認情況下做一些分歧。可以說我們有1234.5678這個詞。默認情況下,在我所處理的所有系統上,如果光標位於1上,則鍵入dw應該使用.5678。當我問這個問題時,輸入dw代替我刪除整個事物(1234.5678)。

+0

您正在尋找'de'。 'd'代表刪除,後面是運動'e',後面是'word'結尾。你可以在'WORD'結尾使用'E'。更多幫助:':h word-motionions' –

回答

2

我不認爲你正在尋找正確的事情。搜索代替它(?英尺)的插件是壓倒'isk' - 仍然冗長 - >:verbose set isk

:h w 
:h word 
+0

好猜!我沒有想過...... – lucapette

+2

然而,它是你給了我這個想法;)由於'dw'是命令+動作,它不太可能被映射。那麼它可能會發生,但我從來沒有見過它。不像'&isk'讓我頭疼一些文件類型。 –

+0

完美,謝謝!我發現一個地方isk被覆蓋,刪除線,現在都很好。 – Spike

4

dw不是映射。 d是一個接受motion的命令,正確的行爲正是您所描述的行爲。 dw代表刪除單詞,並做到這一點:)。順便說一句,如果你想了解一下你的映射,我建議你試試下面的命令:

:map 

,讓你所有的映射列表。和美妙:

:verbose map <c-s> 

,讓你對給定的映射信息(在我們的例子<c-s>

3

如果問題不是由@Luc Hermitte提到「iskeyword」選項,那麼有兩種possibilites:

  1. 正常模式映射,重映射ddw。命令來檢查它是否是問題:

    verbose nmap d 
    

    。它會報告所有d*映射,包括d本身和dw。我不認爲會有很多。

  2. 經營者等待的映射重新映射w。檢查使用

    verbose omap w 
    

我不認爲,雖然任何插件作者是足夠囂張重新映射這一點,所以首先檢查@Luc Hermitte的答案。