什么是Python最接近SLIME的东西? / 从EMACS中使用Python的最佳方法是什么?

13
我正在尝试写一些Python代码,习惯了Lisp的编程方式,使用EMACS中的REPL以及能够向REPL发送任意代码片段的功能。我喜欢这种开发代码的方式,而Python内置的IDLE似乎也很好地实现了这种功能。然而,我更喜欢EMACS作为编辑器。

有没有类似于SLIME的最佳Python插件?


到目前为止:

似乎关键是打开一个Python文件,然后从Python菜单中使用“Start Interpreter”,然后你会得到一个“Inferior Python”缓冲区。然后可以使用C-c C-c将整个正在编辑的缓冲区加载到“REPL”中,并使用常规复制和粘贴将片段放入REPL中。

这种方法在某种程度上可行。是否有任何办法可以说“重新评估光标所在的大块并显示答案”,或者“重新评估光标刚刚结束的东西并显示答案”,就像在SLIME中的M-C-x和C-x-e那样?

如果使用Bozhidar的回答中的python-mode.el,则所有这一切似乎都能更好地工作。


2
我也一直在寻找类似于SLIME的Python工具。我曾经使用过Python解释器的python模式,但是我希望能够找到更好的工具,可以连接到正在运行的Python进程,并像在SLIME中一样使用变量名称自动完成等功能。 - user37248
3个回答

5

有一个名为ipython.el的工具,可以用于比纯Python模式更多的扩展功能。Ropemacs提供了一些额外的完成和重构相关选项,可能会对您有所帮助。这在这里有所讨论。但是,我不认为您会得到类似SLIME的任何东西。


5

我认为新的 python.el 是一个更好的选择。它正在积极开发中,可以生成一个Python shell并将函数定义、缓冲区和文件发送到其中。它还具有比平均水平更好的重新缩进支持。据说在Emacs 24中它可能成为Emacs默认的Python模式。


3

python-mode 是在 Emacs 中编辑 Python 的默认模式。它包括用于评估缓冲区和运行下级解释器实例的命令。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接