web-dev-qa-db-ja.com

PythonのVimオートコンプリート

Vim にオートコンプリート機能を組み込んでいます。 Pydiction と同様にVimの全機能を使用しました。ただし、どちらの場合でも、このメッセージはポップアップ表示されます。

オムニ補完(^ O ^ N ^ P)パターンが見つかりません

私は試しましたPythonは機能しない)でのVimのOmnicompletion。しかし、これは助けにはなりません。回避策?

49
tallandroid

ジェダイhttps://github.com/davidhalter/jedi-vim にVimプラグインがあります。

VimでPythonの場合、他のものよりもはるかに優れた動作をします。名前の変更やgotoなどのサポートもあります。最良の部分は、おそらくコード(デコレータ、ジェネレータなど。機能リストをご覧ください)。

57
Dave Halter

python補完だけでなく他の言語も必要な場合は、これが適切なオプションになります。 https://github.com/Valloric/YouCompleteMe

python完了はjedi-vimと同じjediベースです。

12
Xuan

私はパイディクション(私には役に立たなかった)と通常のオムニコンプリート(制限が多すぎる)を試しました。提案どおりジェダイを調べましたが、セットアップするには複雑すぎることがわかりました。 python-mode が見つかりました。これで最終的にニーズが満たされました。ありがとう @ klen

6

私の知る限り、3つのオプションがあり、それぞれに欠点があります。

  1. youcompleteme :インストールには不向きですが、動作するように管理できた場合はうまく動作します。ただし、 pythonサポートされていません
  2. jedi-vim :最もクールな名前ですが、 履歴を元に戻す を壊します。
  3. python-mode は、折り畳み、構文チェック、強調表示など、より多くのオートコンプリートを実行します。個人的には、管理(および置換)が簡単であるため、1つのことをうまく実行できるスクリプトを好みます。他の2つのオプションとは異なり、オートコンプリートには jedi の代わりに rope を使用します。

Python 3と元に戻す履歴( gundo! )は必須なので、オプション1と2があります。

6
Rafael Barbosa

この時点で、あなたはPython3も完了します。

2
MrLeeh

MacPorts vimと+ pythonを使用して、Macでこれに遭遇しました。問題は、MacPorts vimがpython 2.5と+ pythonのみにバインドするのに対し、私の拡張機能はpython 2.7。pip-2.5を使用して拡張機能をインストールすることです。それを解決しました。

0
Devon Bleak