2017-03-18 34 views
4

有沒有辦法在vim中運行替代命令後清除突出顯示的文本?例如,當我運行:運行替代命令後清除選擇

:'<,'>s/<\([^>].*\)>/<!--\1-->/ 

註釋掉在HTML文件中的當前行,運行命令所有在文檔的文本被高亮顯示後,我不得不打空格鍵清除選擇。

是否有任何我可以添加後立即或作爲替代命令的一部分,所以任何選擇被自動清除命令運行後,所以我不必打空格鍵清除它?

回答

2

那麼,<Space>默認情況下不會清除任何東西,因此您必須將其映射到:nohl<CR>之類的東西。因此,您需要在替換後執行映射到<Space>的命令。

這是通過 「鏈」 前與|命令:

:'<,'>s/<\([^>].*\)>/<!--\1-->/|nohl 
+0

葉氏正確。我的空間映射如下:'map :noh '。我在sub命令後嘗試使用分號鏈接':noh',這當然不起作用,但是bar chain命令正如所請求的那樣工作,除了我必須運行:''<,'> s/<\([^>]。 * \)>//|:nohl'也是冒號。 – commnux