我在Linux中使用gvim的相互作用與IPython的0.12。輸出顯示
我想看看我的顯示*的.py腳本的輸出在IPython的控制檯,但我沒有,如果我喜歡寫東西
print sum([1,2 3])
我希望得到的結果顯示在控制檯管理的相應調整參數。
通常,其實我只得到消息顯示在較低的vim中區域給出執行的輸入號碼(例如[2])。但是In [1]中的顯示在Ipython konsole中不會改變。
感謝您的洞察力。
我在Linux中使用gvim的相互作用與IPython的0.12。輸出顯示
我想看看我的顯示*的.py腳本的輸出在IPython的控制檯,但我沒有,如果我喜歡寫東西
print sum([1,2 3])
我希望得到的結果顯示在控制檯管理的相應調整參數。
通常,其實我只得到消息顯示在較低的vim中區域給出執行的輸入號碼(例如[2])。但是In [1]中的顯示在Ipython konsole中不會改變。
感謝您的洞察力。
我是IPython開發者之一,並且寫了vim-ipython(從中使用ipy.vim
)。
您所看到的行爲僅僅是一個尚未在IPython中實現的所需功能:ipython控制檯,ipython qtconsole和Web筆記本當前不打印它們未啓動的活動。請參閱issue #1873關於此計劃功能增強的討論。
一旦您真的嘗試在ipython的qtconsole中發送新命令,In[]
提示符將會得到更新。
你說的聽起來像是預期的結果,但我想我知道你要做什麼。
您可以使用類似tmux的命令將命令發送到終端會話(使用send-keys
)。所以你將有一個終端顯示你的程序的輸出,另一個終端顯示你的程序的輸出。 Vim會發送一個命令(沿着tmux send-keys "python your.program^M"
的行)到另一個終端來運行你的腳本。
你擁有的另一個選擇是讓vim執行腳本,但將輸出重定向到一個文件。 Vim會執行類似python yourscript.py > /tmp/out &
的操作,而您的其他終端將運行tail -F /tmp/out
,因此它會不斷更新。
感謝您的建議,實際上我發現在ipython shell中執行的%run file.py會產生預期的輸出。 – user17375
...無法編輯我以前的評論。 感謝您的建議,實際上我發現在ipython shell中執行%run file.py會產生預期的輸出。現在我檢查ipy.vim插件發現實際運行def run_this_file(): msg_id = send('run%s%s'%(run_flags,repr(vim.current.buffer.name),)) print_prompt (「In []:run%s%s」%(run_flags,repr(vim.current.buffer.name)),msg_id) 你看到這個函數的一個簡單的調整嗎?謝謝 –
user17375