2014-04-10 88 views
1

我使用的是emacs 24.3和Ubuntu 12.04 LTS。我如何在Python中自動縮進emacs行,就像在IDLE中一樣?目前,它沒有這樣做。如何讓emacs自動縮進Python代碼?

此外,一般來說,我會如何做到這一點對於任何編程語言,比如Java或C++?

+0

http://www.jesshamrick.com/2012/09/18/emacs-as-a-python-ide/ – najjarammar

+0

這是否仍然適用於emacs 24? – brandbest1

+0

試試看,我不會用它來說實話。 – najjarammar

回答

0

您可以嘗試其他python模式,如emacs-for-python或elpy,由此文檔提供:http://wikemacs.org/index.php/Python(儘管默認模式在同一配置下可以正常工作)。

您可以使用package.el(M-x package-install RET elpy RET)安裝它們並按照說明調用它們。

+0

我使用了emacs-for-python,我喜歡它!非常感謝! – brandbest1

+0

實際上還有一個問題:我如何爲其他任何語言(如java)執行此操作? – brandbest1

+0

很高興你喜歡它!嗯......如果你的模式還沒有這樣做,你可以將RET鍵重新映射到換行('newline')和縮進。這個組合目前用'reindent-then-newline-and-indent'來完成。你可以在幫助下進行調查(參見'C-h?')。 – Ehvince

0

用C-j打開一個換行符,你應該得到縮進。

+0

只需按回車鍵自動識別如何? – brandbest1

+0

結果取決於python模式和類型。定製。用python-mode.el,這是默認值,是的。 –

0

嘗試electric-indent-mode。它將在Emacs-24.4中默認使用。但請注意,24.3中的版本在Python模式緩衝區中可能不太適用。

+0

如何啓用它? – brandbest1

+0

在'〜/ .emacs'文件中加入'(電子縮進模式1)'。 – Stefan

+0

我試過這樣做,但現在當我取消縮進一行,然後按回車鍵時,上一行縮回到原來的位置。 – brandbest1