如何在全局或僅在某些模式下禁用Emacs中的自動縮進?在Emacs中全局禁用自動縮進
我有一些爲RubyOnRails(ruby,html,js,css)安裝的軟件包。
比方說,我想禁用css模式的autoindent。
如何在全局或僅在某些模式下禁用Emacs中的自動縮進?在Emacs中全局禁用自動縮進
我有一些爲RubyOnRails(ruby,html,js,css)安裝的軟件包。
比方說,我想禁用css模式的autoindent。
您可能希望查找包含單詞electric
的變量名稱。 (這是常見Emacs說法爲,當特定可見字符被鍵入時自動發生的動作。)
在這種情況下,的Mxapropos-variable
RETelectric
RET讓我發現,存在包含列表的css-electric-keys
可變「應該觸發重新縮進的自插入鍵」。
你可以使用M-Xcustomize-variable
RETcss-electric-keys
RET到此列表設爲零,或添加(setq css-electric-keys nil)
到您的init文件。
有時使用次要模式來實現電動行爲,以便您可以更輕鬆地打開和關閉它們。這些很可能會通過發現的Mxapropos-command
RETelectric
RET,你可能會使用一種主要方式掛鉤,以確保電動輔助模式被禁用,以類似的方式,以這樣的:
(add-hook 'MAJORMODE-mode-hook 'my-MAJORMODE-mode-hook)
(defun my-MAJORMODE-mode-hook()
(ELECTRICMODE-mode 0))
如何找出最後一個ELECTRICMODE模式示例中使用的術語?不幸的是,我在關閉JavaScript文件中的自動縮進時遇到了麻煩,並且對於JS的其他建議我還沒有任何運氣。 – Malvineous 2011-09-23 06:17:36
我的最佳建議是儘可能熟悉Emacs的自我記錄本質,以及圍繞此工具的命令。對於javascript模式,我使用`Mx find-function RET javascript-mode RET`來打開定義它的源文件,然後簡單地搜索「auto」,並迅速在這個變量中找到合適的命中:`Ch v js-auto- indent-flag RET`(這恰好是可定製的,所以你也可以通過使用'Mx customize-group RET js RET'來找到它(javascript「本來會更好,但是」js「是一個相當明顯的第二個猜測) – phils 2011-09-23 11:14:35
對我來說,在emacs 24.x上,Mxelectric-indent-mode
切換了我想禁用的行爲。
FWIW,行爲是RET註定要它在simple.el
定義......除此之外命令newline
,該命令的行爲由electric-indent-mode
改變。
默認情況下沒有自動縮進。我想你應該首先澄清你的問題。 – 2010-12-08 17:15:25