7

我对 IPython 与 Emacs 的集成感到困惑。从 Emacs 24 开始,Emacs 附带了它自己的python.el. 该文件是否支持 IPython 或仅支持 Python?

此外,Emacswiki讨论了一个名为的文件IPython.el(尽管它提供的链接:http: //ipython.scipy.org/dist/ipython.el返回 404 错误)。该文件与 Emacs 24' 兼容python.el还是仅适用于python-model.el?

4

3 回答 3

7

新的python.el(随 Emacs 版本 24.3 提供)确实支持 IPython。您需要将以下行添加到init.el文件中(从 复制的说明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 上可能需要进行一些额外的修改(有关详细信息,请查看init.el源代码)。

但是,您不应该使用ipython.el它与 IPython 包一起分发),因为它显式依赖于python-mode.el(至少安装在我的系统上的 IPython 0.12.1 就是这种情况)。

于 2013-09-28T10:26:09.447 回答
1

不确定股票 python.el,因为我正在运行 python-mode.el,其中有 ipython 支持。但是我只是看了看随我的 Emacs 24 一起安装的 python.el 源代码,它里面有一些对 ipython 的引用,所以它似乎确实支持 ipython。

于 2012-11-16T19:21:32.353 回答
1

Emacs 早在 emacs 22 就附带了 python.el。我正在使用并依赖它来构建我需要的其余 python 编辑功能。

不幸的是,有人写了一个新的 python.el 并且维护者(他们都没有大量使用 python 模式)可以在即将到来的 24.3 中替换现有的和工作的 python.el。他们打算以向后兼容的方式来做这件事,可悲的是,它落在了相反的一边。

python.el从 24.3 之前开始支持运行 ipython。

于 2012-11-21T08:29:37.580 回答