2009-10-01 53 views
6

在vim中搜索我的python完成涅v時,我真的很喜歡< C-x > < C-i >:「當前文件和包含文件中的關鍵字」。這幾乎總是讓我從另一個完成的模塊中得到一個很長的討厭名字,這非常棒。Vim中更快的多文件關鍵字完成?

(全方位完成顯然是更好時,它的工作原理,但往往會報告無法找到任何匹配。好吧,Python是不是Java,我明白了)這個多

唯一的問題文件完成是非常緩慢的:在我的上網本中,具有合理的一組導入的文件可能需要4或5秒來解析每次我點擊<Cx> <Ci>。它似乎加載每個導入的文件,每次我擊中< C-x > < C-i >。有什麼辦法緩存文件或加快這個過程?使用標籤完成會更快嗎?

回答

6

如果您正在處理多個源文件的項目(vim需要解析所有包含的源文件以查找更多包含的源文件並構建單詞列表,那麼這個過程很可能需要一些時間。)您可能使用標記完成,它使用ctags的輸出做幾乎相同,但你需要運行一些測試來判斷速度差異。

我個人使用完整完成(<C-P><C-N>插入模式。)默認情況下,它匹配所有單詞的所有緩衝區(即使已經被卸載,已經關閉的即文件緩衝區),但速度非常快。儘管如此,即使您在2-3個字符後激活完成,我仍然發現完成工作非常準確。

+1

難怪我對默認值感到惱火......我有一個插件可以將C-N從完全映射到全向完成。這幾乎是我所需要的。 – gravitation 2009-10-01 09:08:52