2012-11-16 43 views

回答

7

新的python.el(附帶Emacs 24.3版本)確實支持IPython。您需要將下面的行添加到您的​​文件(從python.el複製的指令):

(require 'python) 
(setq 
    python-shell-interpreter "ipython" 
    python-shell-interpreter-args "--pylab" 
    python-shell-prompt-regexp "In \\[[0-9]+\\]: " 
    python-shell-prompt-output-regexp "Out\\[[0-9]+\\]: " 
    python-shell-completion-setup-code 
    "from IPython.core.completerlib import module_completion" 
    python-shell-completion-module-string-code 
    "';'.join(module_completion('''%s'''))\n" 
    python-shell-completion-string-code 
    "';'.join(get_ipython().Completer.all_completions('''%s'''))\n") 

這在Linux上工作(我運行Ubuntu 12.04),可能需要在Windows上一些額外的修改(有關詳細信息,檢查​​源)。

但是,你應該使用ipython.el(與IPython的包分配),因爲它明確地取決於python-mode.el(至少這是與它安裝在我的系統上的IPython 0.12.1的情況下)。

1

由於我正在運行python-mode.el,它具有ipython支持,所以不能確定股票的python.el。但我只是看了一下用Emacs 24安裝的python.el源代碼,它裏面有幾個對ipython的引用,所以它似乎支持ipython。

1

從emacs 22開始,Emacs自帶了python.el。這就是我正在使用的,依靠構建我需要的其他python編輯功能。

不幸的是,有人寫了一個新的python.el和維護者(他們都沒有使用python模式)確定它替換了即將到來的24.3中的現有和工作python.el。他們會以向後兼容的方式做到這一點,可悲的是,落在對面。

python.el從24.3開始支持運行ipython。