Sublime Text 3总是使用制表符而不是空格来缩进

时间:2015-01-28 10:07:49

标签: formatting sublimetext sublimetext3 indentation

我想在ST3中始终使用空格而不是制表符来缩进 我把这些放在我的设置中:

"translate_tabs_to_spaces": true,
"convert_tabspaces_on_save": true, // for a plugin
"detect_indentation": false,
"tab_size": 4

设置convert_tabspaces_on_save用于强制转换标签 - >使用插件ExpandTabsOnSave

保存至少存档的空格

但无论如何,ST3使用制表符而不是空格来缩进新打开的文件。

这可能是一个错误,还是我使用了错误的设置?

提示:任何时候我间接修改文件Preferences.sublime-settings,例如使用命令Package Control: Disable Package,它会以标签而不是空格保存

3 个答案:

答案 0 :(得分:6)

根据文档,这些设置应该可以解决问题(它们对我有效):

{
    // Integer. The number of spaces a tab is considered equal to
    "tab_size": 4,

    // Boolean, if true, spaces will be inserted up to the next tab stop when tab is pressed, rather than inserting a tab character
    "translate_tabs_to_spaces": true,

    // Boolean, if true (the default), tab_size and translate_tabs_to_spaces will be calculated automatically when loading a file
    "detect_indentation": true,

    // Boolean, If translate_tabs_to_spaces is true, use_tab_stops will make tab and backspace insert/delete up to the next tab stop
    "use_tab_stops": true
}

如果这不起作用,请尝试禁用所有插件,重新启动并查看问题是否仍然存在。如果没有,它就是其中一个插件(或几个相互冲突的插件)。您可以通过一次启用它们并查找重新出现的问题来找到它。

答案 1 :(得分:0)

有一些麻烦,但除此之外 - 我希望使用标签,但sl3插入空格。它的行为只适用于css / scss文件!我的user.config:

{
"font_size": 11,
"ignored_packages":
[
    "Vintage"
],
"tab_size": 2,
"translate_tabs_to_spaces": false,
"convert_tabspaces_on_save": false,
"word_wrap": "false"

}

答案 2 :(得分:0)

尝试以下操作:查看-> 缩进-> 使用空格缩进