【发布时间】:2011-10-14 14:06:38
【问题描述】:
我想将缩进模式设置为仅制表符,任何模式都具有 4 个字符的宽度。这似乎是一件微不足道的事情,但我没有成功。每种模式似乎都有自己的变量和选项。我试过为 Perl 和 R 做这个,但没有成功。 没用的东西:
(setq-default tab-width 4)
(setq standard-indent 4)
(setq-default r-indent-level 4)
(setq perl-indent-level 4)
(setq c-basic-offset 4) 适用于 c 模式,但仅此而已。我是不是忘记了什么?我是否设置了错误的变量?没有这个选项吗?
我每天都在使用多种语言(R、Perl、sh、C/C++ 等)。由于我喜欢跨语言使用相同的缩进,是否有这样的全局覆盖变量可以设置,以便缩进级别和样式在所有模式中保持一致?如果没有,有没有办法在启动时为每种模式设置它们?如果所有其他方法都失败了,则必须有一个 elisp 脚本来执行此操作。
使用 Emacs 23
已解决:我必须为每种模式单独设置变量,因为没有这样的全局覆盖。您可以在 ~/.emacs 文件中放入以下语句来配置启动时的 emacs。
R 模式来自ESS 包。通读文档,我发现:(setq ess-indent-level 4)
在 CPerl 模式下(setq cperl-indent-level 4)
看起来您只需要在每种模式下搜索正确的变量。
【问题讨论】:
标签: emacs elisp indentation emacs23