2011-10-18 44 views
5

有沒有一個技巧或腳本可以讓我輕鬆切換vim-plugins和-settings?切換Vim插件集

我使用vim進行非常不同的開發和編寫。例如,在LaTeX中編寫報告時,可能會遇到某些特定的web開發特定插件的問題。

我想看到的是類似於RVM

  • 有一組「全局」插件和設置;插件和始終啓用或使用的設置。
  • 每個項目的插件和設置;插件,配置和設置,將在激活「環境」後加載。
+0

Vim有一個runtimepath變量,顯然可以在vimrc中設置。據我所知,但你必須重新啓動vim才能使更改生效。 –

+1

我不介意重新啓動。在我開始vim之前,我會知道啓動什麼「環境」。在git和switch分支中使用.vim會起作用;如果不是複製和管理成爲一個麻煩。 – berkes

+0

是「每個項目」文件類型特定的?如果是這樣,你可能只需要你的插件是ftplugins。另外,請參閱':help LocalLeader'來幫助分離全局和文件類型插件映射。 – idbrii

回答

4

您可能會發現localvimrc成爲點數兩個有用的。它允許你在你的項目文件夾中有一個.lvimrc,其中包含該特定項目的設置。在該文件中,您可以通過操縱runtimepath或使用pathogen/vundle/whatever來加載您的項目特定插件。

使用此方法,您將像平常一樣配置您的「全局」設置和插件。

2

不錯的問題恕我直言。順便說一句,使用插件管理器也可以簡化這種類型的東西。例如,病原體你可以這樣做:

" To disable a plugin, add it's bundle name to the following list 
let g:pathogen_disabled = [] 

if your_condition 
    call add(g:pathogen_disabled, 'myplugin') 
    call add(g:pathogen_disabled, 'myplugin2') 
end 

有關條件裝載一個很好的例子見this answer。在病原體中實現此功能將非常高興。

1

我只是做別名

alias mvim='vim -u myvimrc' 

alias ovim='gvim -U someothervimrc' 

答是的,你可以使用runtimepath vimrc的-S的內部設置非常不同的配置