如何强制Sublime Text每个标签缩进两个空格?

时间:2012-02-27 23:33:39

标签: editor sublimetext2 sublimetext indentation

使用Ruby文件时,有没有办法强制Sublime Text 2始终在每个标签上缩进两个空格?

我知道缩进可以在view -> indentation菜单选项下设置,但它不会粘。每次我打开一个新文件并点击标签时,它都会恢复为四个空格。

6 个答案:

答案 0 :(得分:856)

如果您想要所有文件,请转到Preferences -> Settings - Default/User。但正如下面的几条评论所示,语法特定设置可以将其限制为您选择的语言。

要将此配置限制为Ruby文件,首先在编辑器中打开一个Ruby文件,然后转到Preferences -> Settings - Syntax Specific。这应该打开一个名为Ruby.sublime-settings

的设置窗口

保存这些设置:

{
  "tab_size": 2,
  "translate_tabs_to_spaces": true,
  "detect_indentation": false
}

通过打开该类型的文件并返回首选项以打开该语法的正确首选项文件,对任何其他语法类型重复此操作。

我已根据评论中的请求编辑了此内容以包含“detect_indentation”行;我之前使用默认/用户来设置我的选项卡大小,并且不需要选项卡检测,但是这是由于全局配置还是由于我很少打开带有选项卡的文件,我不知道。< / em>

不应该重新启动,尽管在某些情况下它可以是。

答案 1 :(得分:162)

如果您想强制选择的标签设置,忽略文件中可能出现的内容,那么您应该在配置中包含detect_indentation(您的用户设置或语法特定设置,具体取决于您是否需要全局或每个文件类型):

{
    "tab_size": 2,
    "translate_tabs_to_spaces": true,
    "detect_indentation": false
}

答案 2 :(得分:82)

您也可以使用Sublime Text 2(右侧)底栏中默认显示“Tab Size 4”的文本链接,单击该文本链接,然后出现一个窗口,其中包含用于设置选项卡大小的选项从1个空间一直到8个空格,包括将标签转换为空格和空格到标签的选项。

看起来像这样:

Tab Options in Sublime Text 2

答案 3 :(得分:27)

我可以建议EditorConfig吗?有一个extension自动加载并应用.editorconfig文件。然后只需在项目的根目录中创建一个。

.editorconfig

[*.rb]
indent_style = tab
indent_size = 2

这样,如果您为每个项目或语言使用不同的样式,那么您的设置是项目特定的和特定于文件的。


这是我自己.editorconfig的样子。

# editorconfig.org
root = true

[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

答案 4 :(得分:8)

我使用Stupid Indent包。

Install Package - &gt; Stupid Indent

Preferences - &gt; Package Settings - &gt; Stupid Indent - &gt; Setting-Users

将设置(Ruby部分)复制到。

{
    "configuration":
    [
        {
            "patterns": ["*.rb"],
            "tab_size": 2,
            "translate_tabs_to_spaces": true
        }
    ]
}

答案 5 :(得分:1)

我按照之前的答案,包括添加detect_indentation行,我的标签仍然是五个空格。然后我意识到从ruby文件中选择Preferences -> Settings -> More -> Syntax Specific -> User对我来说是Ruby on Rails.sublime-settings,而不是Ruby.sublime-settings

我将Ruby on Rails.sublime-settings文件重命名为Ruby.sublime-settings。最后两个空格标签工作!为了确定,我继续在Ruby on Rails.sublime-settings中设置了相同的设置。