首页 文章

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

提问于
浏览
455

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

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

6 回答

  • 160

    如果您想要所有文件,请转到 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"行;我以前使用默认/用户来设置我的选项卡大小,并且不需要选项卡检测,但是这是由于全局配置还是由于我很少打开带有选项卡的文件,我不知道 .

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

  • 7

    如果您想强制选择的选项卡设置,忽略文件中可能已经发生的事情,那么您应该在配置中包含 detect_indentation (您的用户设置或语法特定设置,具体取决于您是希望全局还是每个文件类型) :

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

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

    看起来像这样:

    Tab Options in Sublime Text 2

  • 823

    我可以建议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
    
  • 78

    我使用Stupid Indent包 .

    Install Package - > Stupid Indent

    Preferences - > Package Settings - > Stupid Indent - > Setting-Users

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

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

    我按照之前的答案,包括添加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 中 .

相关问题