14

私は bpython を使用するのが大好きですが、Ruby には、Vi(m) を Ruby シェルと組み合わせて開発プロセスをより快適にする interactive_editor という gem があります。interactive_editor の良い紹介: http://vimcasts.org/episodes/running-vim-within-irb/

Python シェルと Vi(m) を組み合わせるために利用できるツール (Ruby の interactive_editor など) はありますか?

4

2 に答える 2

14

vim-ipython vim プラグインを見ることができます。

https://github.com/ivanov/vim-ipython

これには、ipython シェルをインストールする必要があります (ただし、標準の python シェルに多くの機能が追加されるため、とにかくこれを行うことをお勧めします)。

ipython をインストールしたくない場合は、vim 用の ConqueShell プラグインを確認することをお勧めします。

http://www.vim.org/scripts/script.php?script_id=2771

これにより、vim 内でシェルを実行できます。vim-ball を入手したら、あとは次の手順を実行するだけです

:ConqueTerm python

vimで直接pythonシェルを取得します。

于 2012-04-23T10:20:55.390 に答える
1

vim-ipython を動作させることができなかったので、ConqueShell で動作するこの .vimrc ソリューションを作成しました。

imap <silent> <leader>m <Esc>Vy<C-w><C-w>p
nmap <silent> <leader>m Vy<C-w><C-w>p
vmap <silent> <leader>m y<C-w><C-w>p
imap <silent> <leader>n <Esc><C-w><S-w>']0j
nmap <silent> <leader>n <C-w><S-w>']0j

新しい Vim 画面と ConqueShell がインストールされた状態で、次のように入力し:ConqueTermSplit pythonます。元のウィンドウ (ショートカットは ) に戻り、<C-w><S-w>Python コードを入力します。

カーソルの下の行をインタープリターに送信するには、 を押し<leader>mます。リーダーをコンマにマッピングしたので、これは非常に単純なモーションです。コードのブロックを送信するには、ビジュアル モードでいくつかの行を強調表示し、実行します<leader>m。同じように機能します。

スクリプトに戻るに<leader>nは、実行した直後の行に移動します。副次的な利点として、このコマンドを使用して、ウィンドウからウィンドウにすばやく移動することもできます。

編集 (2015 年 2 月 20 日): インタープリターとして ipython を使用している場合は、実行%autoindentして自動インデントをオフにして、一部のコード ブロックの書式を保持する必要があります。乾杯!

于 2014-01-15T01:49:01.697 に答える