我在 Emacs 中安装了 SML 模式,并且缩进搞砸了。我禁用了我所有的 .emacs 自定义,但这没有任何区别。在下面代码中每一行的末尾,我使用了C-j
,它被映射到newline-and-indent
.
如果我突出显示所有内容并重新缩进 ( C-M-\
),结果会更有意义:
我在 Ubuntu 12.10 上使用 Emacs 24.1.1 和 SML Mode 6.2。我该怎么办?
我在 Emacs 中安装了 SML 模式,并且缩进搞砸了。我禁用了我所有的 .emacs 自定义,但这没有任何区别。在下面代码中每一行的末尾,我使用了C-j
,它被映射到newline-and-indent
.
如果我突出显示所有内容并重新缩进 ( C-M-\
),结果会更有意义:
我在 Ubuntu 12.10 上使用 Emacs 24.1.1 和 SML Mode 6.2。我该怎么办?
不要使用newline-and-indent
. 您可以使用reindent-then-new-and-indent
orelectric-indent-mode
代替。
在 .emacs 文件中尝试:
(setq default-tab-width 4);
(setq-default indent-tabs-mode nil);
(global-set-key (kbd "TAB") 'self-insert-command);
我不是巫师,但这对我有用。 http://www.pement.org/emacs_tabs.htm
按照 Stefan(现在 4 岁...)的建议,您可以通过以下方式自动启用次要electric-indent-mode
模式sml-mode
:
(push (lambda () electric-indent-local-mode 1) sml-mode-hook)
在您的 emacs 初始化代码中的某处。
或者,您可能更喜欢:
(use-package sml-mode
:config
(push (lambda () electric-indent-local-mode 1) sml-mode-hook))
在我看来,这对于在sml-mode
.