Pou*_*oul 9 ruby emacs ruby-on-rails dot-emacs
从上一篇文章中我得到了Ruby模式在emacs中工作.这很有效.
我们公司使用4个空格进行缩进,而不是默认2.我很难让它工作.
这是我的.emacs文件
(add-to-list'load-path"〜/ rdoc-mode.el")
(需要'ruby-mode)
(setq indent-tabs-mode nil); 始终用空格替换制表符
(setq-default tab-width 4); 为所有缓冲区设置标签宽度为4
有谁看到我做错了什么?
谢谢!
Pär*_*der 18
该tab-width设置仅控制制表符的宽度,即制表符在缓冲区中显示时等效的空格数.它不会影响用于缩进代码的空格(或制表符)的数量.
对于Ruby代码,缩进由ruby-indent-level变量控制:
(setq ruby-indent-level 4)
Run Code Online (Sandbox Code Playgroud)
san*_*inc 15
其他海报提供了正确答案,所以我在这里提到如何找出这类问题的答案.
首先,由于您正确地假设缩进宽度是可配置的,首先要尝试的是:
M-x customize-group RET ruby-mode RET
Run Code Online (Sandbox Code Playgroud)
当然,其中一个定制选项是"Ruby Indent Level".您可以设置它并保存更改.完成!
或者,您可以查看ruby-mode本身:
M-x find-library RET ruby-mode RET
Run Code Online (Sandbox Code Playgroud)
然后搜索(使用Cs)'缩进'.在那里你会找到一个变量定义:
(defcustom ruby-indent-level 2 ...)
Run Code Online (Sandbox Code Playgroud)
当你找到这样的变量时,可以使用setq在.emacs(或〜/ .emacs.d/init.el)中设置它.
(setq ruby-indent-level 4)
Run Code Online (Sandbox Code Playgroud)
你也可以使用apropos发现变量:
M-x apropos RET indent ruby RET
Run Code Online (Sandbox Code Playgroud)
这就是emacs被描述为"自我记录"的原因!
| 归档时间: |
|
| 查看次数: |
5729 次 |
| 最近记录: |