TL; DR:
Pythonベースの開発プラグインが必要+python
/ +python3
サポート。それは完全に合理的に聞こえます。
Vimプラグインと人間の行動について
一般的に言えば、人間は物事が単純で「ただ働く」ように見えることを望んでいます。Vimプラグインに関して言えば、Vimmerは通常、依存関係のないプラグインまたはほとんど依存しないプラグインを求めています。基本的にはgit clone
、vimrc
ファイル内の数行または数行、あるいはその両方と同じくらい単純でなければなりません。プラグインを最初に機能させるために構成する必要があるか、依存関係が必要になるほど、エントリへの障壁が追加されます。
この動作の良い例は、CommandTとCtrlPです。
- CommandTはRubyとCを使用してあいまい検索を実行します
- 一方、CtrlPは純粋なVimL / Vimscriptです。
- CommandTは通常、バニラCtrlPよりも高速です。
CommandTが最初にリリースされたときから特に人気があると仮定しますが、そうではありません。CommandTには約2000人のユーザーがいて、CtrlPには約20,000人のユーザーがいます。私の意見では、CommandTの要件は参入障壁を引き起こします。git clone
CtrlPの場合と同様に、vimドットファイルを使用できず、CommandTを使用して新しいマシンで稼働することはできません。
対位法:
それは+python
/ ではなくC + Ruby +python3
です。Pythonのサポートが組み込まれています。あなたは絶対的に正しいです。この証明例のポイントは次のようになりGundo使用(〜5000)+python
対undotree純粋VIMLです(〜1000)。私の個人的な意見では、undotreeはGundo(最初に市場に出たもの)よりもあまり知られていないと私は主張します。
VimプラグインにPythonを使用するだけで十分です。
結局のところ、PythonでVimプラグインを実行するには、VimといくつかのVimLについてかなり知っている必要があります。vim
モジュールは、それが以前よりもはるかに優れているが、依然として状況はeval-ようVIMLの公正な量を必要とします。
vim.command("set tw=72")
vim.command("%s/aaa/bbb/g")
text_width = vim.eval("&tw")
を参照してください:h python-vim
。
プラグインのpython部分を「ブートストラップ」するためにVimLも必要です。したがって、VimLからの脱出はなく、量を減らすだけです。
結論
+python
/ が必要な場合は、+python3
必ずそれを使用してください。Pythonサポートの素晴らしいユースケースがあるようです。ただし、私の意見では、VimL / Vimscriptを完全に回避することはできません。私はVimLでVimを実行することをお勧めします。VimLで実行するのが難しい/トリッキー/遅いものにはpythonを使用します。