vimで病原体を使用して一部のプラグインを一時的に無効にします。


96

1つのプラグインにバグがあると思います。デバッグするために、病原体のバンドルフォルダーにある他のすべてのバンドルを削除せずに、このプラグインのみをロードしたいと思います。

出来ますか?

回答:


129

Pathogenを使用するときにプラグインを無効にする最も簡単な方法は、pathogenを開始する前に、バンドル名をg:pathogen_disabled変数に追加することです。

自分のvimrcの例

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

" for some reason the csscolor plugin is very slow when run on the terminal
" but not in GVim, so disable it if no GUI is running
if !has('gui_running')
    call add(g:pathogen_disabled, 'csscolor')
endif

" Gundo requires at least vim 7.3
if v:version < '703' || !has('python')
    call add(g:pathogen_disabled, 'gundo')
endif

if v:version < '702'
    call add(g:pathogen_disabled, 'autocomplpop')
    call add(g:pathogen_disabled, 'fuzzyfinder')
    call add(g:pathogen_disabled, 'l9')
endif

call pathogen#infect()

更新:Pathogenでサポートされている別の方法は、無効にするバンドルのディレクトリの名前を変更して、ティルダ(〜)で終わるようにすることです。autocomplpopバンドルを無効にするには、名前をに変更しautocomplpop~ます。


1
チルダ戦略は現在機能していないようです(バージョン2.3以降)。
echristopherson 14年

6
@echristophersonこれは、少なくともdevブランチでは、病原体に戻っているはずです。
FDinoff 2014

8
現在で2.4g:pathogen_blacklist代わりになります。
Yuri Ghensev

36

vim -u NONE -N.vimrcからの設定なしで、プラグインなしでvimをロードします。次に、:source /path/to/plugin/you-want.vimvim内で、ロードしたい1つのプラグインをロードします。


+1。ばかげた、これは素晴らしいアドバイスです。しかし、私は多くのftpluginなどを持っているので、@ハーバートのアプローチは私の状況により適していると思います。答えてくれてありがとう、あなたの解決策は私が病原体をインストールすることができない箱で使うのに害があります。
誰かがMS-DOSを

また、vimを次のように起動し、vimのvim -u NONE -N内部で:filetype plugin onfiletypeプラグインを有効にしてください。
frabjous

9

vim --noplugin

この場合、vimはプラグインをロードしませんが、vimrcが使用されます。

vimでプラグインをロードできるようになったら、次のようにします。

:source 'your plugin path'


3

なぜか:

  1. 現在のバンドルディレクトリの名前を変更する
  2. 新しい空のバンドルディレクトリを作成する
  3. テストプラグインファイルを新しいバンドルディレクトリに配置しますか?

完了したら、すべてを元の状態に戻します。(プラグインなしでVimをロードしてプラグインファイルを調達するという推奨される方法は、単純な1ファイルプラグインであれば機能しますが、ftpluginを実行している場合は、dirsを移動するのがおそらく最善の方法であり、それほど難しくありません。)


+1。シンプルで効果的、すべてのフォルダーを一時フォルダーに移動するだけです。
だれかがまだMS-DOSを

2

元の名前の後にチルダ記号〜を付けることにより、特定のプラグインの名前を変更できます。末尾にチルダ記号〜が付いているバンドル内のすべてのプラグインフォルダーは、病原体によって読み込まれません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.