.vim
ディレクトリを確認すると、vim-plug
でインストールされたすべてのプラグインが.vim/plugged
ディレクトリにあることがわかりました。この場合、vimはどのようにこれらのプラグインをロードしましたか?私は、同じプラグインが正常にインストールされている場合は、どちらがより高い妥当性を持ってロードされますか?vimプラグインはどのように私のvimプラグインを管理していますか?
1
A
答えて
1
plug#begin(...)
機能はプラグインの「ホーム」のパスを設定します(vim-plug
があまりにもプラグインです)、
if a:0 > 0
let s:plug_home_org = a:1
let home = s:path(fnamemodify(expand(a:1), ':p'))
...
と機能plug#end()
は(plug#()
経由で)定義されたプラグインのリストを通過し、それらを保持します辞書に:
for name in g:plugs_order
...
if has_key(plug, 'on')
let s:triggers[name] = { 'map': [], 'cmd': [] }
for cmd in s:to_a(plug.on)
if cmd =~? '^<Plug>.\+'
if empty(mapcheck(cmd)) && empty(mapcheck(cmd, 'i'))
call s:assoc(lod.map, cmd, name)
最後に(最終的に)呼び出すことによってruntimepath
とsource
のプラグインのそれぞれを操作するs:lod()
:
for [cmd, names] in items(lod.cmd)
execute printf(
\ 'command! -nargs=* -range -bang %s call s:lod_cmd(%s, "<bang>", <line1>, <line2>, <q-args>, %s)',
\ cmd, string(cmd), string(names))
endfor
あなたはプラグインがvim-plug
のコードからロードされる順序を把握することができます。
0
プラグインの読み込みは、スクリプトファイルのソースであることに留まりません。スクリプトファイルはどこにでも置くことができます。
通常、プラグインには、スクリプトが既に読み込まれているかどうかを検出するフラグ(g:変数など)があります。したがって、2度読み込まれることはありません。ただし、プラグインにこのメカニズムがない場合は、2回ロードすることができます。
関連する問題
- 1. VundleでVimプラグインのフォークを管理する
- 2. Vimの「プロジェクト」のプラグイン -
- 3. Vim bugzillaプラグイン?
- 4. カスタムAutoClose vimプラグイン
- 5. Visual StudioのVimエミュレーションはプラグインをサポートしていますか?
- 6. Vimがプラグインをロードしていない
- 7. vimでperl-supportプラグインのcomments.templateをどのようにカスタマイズしますか?
- 8. vimにTim Popeのcucumber.vimプラグインはどのように使われますか?
- 9. Vim用Python&Djangoプラグイン
- 10. vimのtreelike構造のプラグイン
- 11. は、それは私がvimの7.3とNERDTree 4.1プラグインを使用していますvimの
- 12. IntelliJ Vimプラグインはキャプチャグループをサポートしていませんか?
- 13. どのVimプラグインがRubyコードをオートコンプリートしますか?
- 14. Vimプラグイン - コマンドモードでparamsのカスタムオートコンプリート
- 15. Vim用の素晴らしいSubversionプラグインはありますか?
- 16. vimでプラグインを削除するには?
- 17. vimは、vimrcをロードした後にプラグインをロードしますか?
- 18. vimで〜/ .vim/bundlesに新しいプラグインを使用する最速の方法
- 19. vimプラグインのインストールに関する問題
- 20. vimプラグインが動作しない:schlepp
- 21. このようなvimのコード崩壊プラグインはありますか?
- 22. NERDtree Vimプラグインを使用したコピーパスファイル
- 23. Vim-R-プラグインを使い始めるのが苦労します
- 24. ディレクトリリスト/ファイルを開くためのvimプラグイン
- 25. IDEのような動作のためのVim FTPプラグイン
- 26. vimの表形式のプラグインの質問
- 27. ハイライトHex、Rgb、カラーのためのVimプラグインはありますか
- 28. コールトレース付きのVimプラグインのデバッグ
- 29. Vimのプラグインの外部リンク今
- 30. エメット-VIMは私がこの記事で読ん設定で作業mattn /エメット-vimのプラグインを取得しようとしていますプラグ
注:Stackoverflowには、 "viとvim"のベータサイトもあります。見てみな! – Jens
優先順位は '' rtp ''オプションで決まります。どの変数がロードされているかを知るには、この変数を調べてください(BTW ':h 'rtp'を参照)。次に、あなたの次の質問はおそらく "どのように満たされていますか?"です。まあ。これは 'rtp'のおかげです。あなたのプラグインマネージャーはプラグインを別々のフォルダに登録しています。 –
プラグインマネージャーのすべてのポイントが、それらの概念からあなたを守るのではないのですか? – romainl