5

Pythonのサポートは最新バージョンのemacsに統合されています。たとえばC-c C-z、インタプリタを提供C-c C-cし、他のバッファに移動することなく、作業中のファイルを自動的に解釈します。(emacsのアプローチにはいくつかの欠点がありますが)

これはvimで可能ですか、それとも2回のキーストロークでemacsのように簡単に実行できますか?で式を評価できることは知っています:pythonが、それは私が望んでいることではありません。

4

3 に答える 3

11

Pythonで現在のファイルを実行するには、コマンドを使用できます:!python %。vimrcを編集することで、これをキーボードショートカットにバインドできます。たとえば、vimrcに追加すると、通常モードでnnoremap \ll :!python %<cr>入力したときにPythonで現在のファイルが実行されます。\ll(*詳細については脚注を参照してください)。

vim-ipythonプラグインを使用すると、vimでipythonウィンドウを開くことができます。また、ターミナルを垂直に2つに分割できるtmuxにも興味があるかもしれません(これにより、シェルとvimを並行して実行できます)。

vimを本当に良いPythonIDEに変えることができるプラグインはたくさんあります。構文エラーを自動的に強調表示する「pyflakes」は、私の特にお気に入りです。

このブログ投稿では、Python用のvimプラグインについて詳しく説明しています。

http://sontek.net/blog/detail/turning-vim-into-a-modern-python-ide


(*)余談ですが、このコマンドをPythonファイルに固有にすることもできます(PythonインタープリターでC ++ソースを実行することは実際には意味がありません)。これは、ディレクトリ内の特定のpython.vimファイルに配置する.vim/ftpluginか、次のように記述することで実行できます。

autocmd FileType python nnoremap \ll :!python %<cr>

.vimrcで。\llこのようにして、キーボードショートカットをさまざまな種類のファイルのさまざまなアクションに再バインドできます。

余談ですが、現在のファイルのセクションを実行するだけの場合は、ビジュアルモード(SHIFT + v)で関連する行を選択し、:!python %コマンドを入力します。選択した行はPythonインタープリターにパイプされます!

于 2013-01-25T18:25:43.160 に答える
0

キーストロークを使用するには、vimのマッピングキーを参照してください。

于 2013-01-25T18:19:56.830 に答える
0

はい、私はVimを拡張してまさにそれを行うためにしばらく時間を費やしました。私の試みのほとんどは、Subversionリポジトリで利用できます。vimツリーを参照してください。

Vimは、埋め込まれたPythonインタープリターを使用してコンパイルすることもできます。これを使用して、バッファー内のコード行を評価したり、Pythonを使用して新しい機能を追加したりできます。詳細をお試し:help pythonください。

私はXWindowsを使用しているので、これらのほとんどはその環境で機能し、Vimから次のようなシェルラッパーを呼び出します。

1 $ cat bin / xpython

#!/bin/sh

if [ $# -gt 0 ] ; then
    urxvt -title Python2 -name Python -e python -i "$@"
else
    urxvt -title Python2 -name Python -e bpython
fi

したがって、Gvimから、キーにマップされたpythonの代わりにxpythonを実行できます(ソースを参照)。これにより、コードを実行している新しいPythonインスタンスを含む新しいターミナルウィンドウが開きます。

于 2013-01-25T20:02:14.970 に答える