F9〜:pyf %
には、vim
のpythonファイルを実行するために使用しました。しかし、単にvim
セッションからPythonコードを実行するために好まれるべきアプローチ迷っpyf%と:!python%実行中のPythonコード
nnoremap <buffer> <F9> :exec '!python' shellescape(@%, 1)<cr>
を示唆している、このanswerを読んだ後。
F9〜:pyf %
には、vim
のpythonファイルを実行するために使用しました。しかし、単にvim
セッションからPythonコードを実行するために好まれるべきアプローチ迷っpyf%と:!python%実行中のPythonコード
nnoremap <buffer> <F9> :exec '!python' shellescape(@%, 1)<cr>
を示唆している、このanswerを読んだ後。
:pyfile
は:python
(ファイルから直接引数ではなくコードを読み取る)の亜種です。両方ともコードをVimの組み込みPythonインタプリタの中で実行します。これは主に、Pythonで書かれたVimプラグインを対象としています。 VimのPythonインターフェイス(cp。:help python-vim
)にアクセスでき、Vimを終了するまでコード/グローバルは保持されます。副作用のない些細なコードの場合
それはそのためのものではないですが、これは、問題ないはずです。
:!python ...
のVimから完全に分離外部Pythonインタプリタを、起動。 VimはここでPythonのサポートでコンパイルする必要はありません。各呼び出しは別々のプロセスであるため、実行間には永続性はありません。コマンドラインから直接スクリプトを起動するのと同じように、それぞれ新鮮です。また、あなたはシステムのデフォルトのPythonインタプリタを使用している、いない1つのVimはに対してコンパイルされました。
あなたが明示的にVimのプラグインを書いている場合を除き、私は、このアプローチをお勧めします。
:pythonfile
は、Pythonがvimに組み込まれたファイルを実行し、スクリプトはモジュールvim
をインポートできます。
!python
vim内部へのアクセス権を持たない外部インタープリタを実行します。
おかげで、インゴが、これは私が探していたものです – dlmeetei