VIM Lazy Load 懶載入/延遲載入技術

SolomonXie發表於2019-01-07

很多重量級外掛在啟動時是非常耗時的,動不動400ms以上,比如YCM,效果很明顯。但是我們實際上沒必要一開始就載入所有的外掛,而是有些檔案才用得上,或者Insert模式才用得上。
所以,我們可以按需載入,這樣就省了很多時間。

參考:延遲載入ycm以加快vim的啟動速度

配合vim-plug外掛管理器的On功能(On-Demand),和autocmd命令,我們可以簡單做到這點:

" 外掛定義處:
Plug `Valloric/YouCompleteMe`, { `on`: [] }

" 配置:
augroup load_ycm
    autocmd!
    autocmd InsertEnter * call plug#load(`YouCompleteMe`) | autocmd! load_ycm
augroup END

如果在Plug後面加上了onfor選項,那麼意味著啟動時候這個外掛會禁止載入。而載入的時間,需要我們後面手動指定一個autocmd自動命令或命令組來實現。
而手動載入外掛的命令為:call plug#load(`外掛名`)

具體on和for的用法,
參考官網:on-demand-loading-of-plugins

相關文章