在Emacs 24的python-mode(python.el)中启用自动缩进?

问题描述:

我最近宣布emacs破产,并重建我的配置从旧python-mode.el切换到内置python.el在Emacs 24的python-mode(python.el)中启用自动缩进?

我缺少的一件事是自动缩进到正确水平时的旧行为,当打到RET时。有什么方法可以重新启用它吗?

试试这个:

(add-hook 'python-mode-hook 'my-python-hook) 

(defun my-python-hook() 
    (define-key python-mode-map (kbd "RET") 'newline-and-indent)) 
+1

我把你的答案与lunaryorn's结合起来,如下所示:'('add-hook'python-mode-hook'electric-indent-mode)'。 – wsaleem

+0

此更改在我点击时添加了缩进,但现在它为新的.py文件缩进几个制表符(5或6)。我如何将它设置为4个白色的间谍? – Usobi

在即将到来的Emacs 24.4自动indendation默认情况下,由于启用electric-indent-mode。由于Emacs 24.4已经功能冻结了很长一段时间,所以应该没有重大的缺陷,所以你已经可以进行切换了。

+1

事实上,请注意,为了在默认情况下启用它,'electric-indent-mode'已经看到了一些改进:24.3中的版本不适用于python.el,而24.4中的版本应该可以正常工作。 – Stefan