即使我已经完成所有设置,Sublime 仍然对某些文件使用 4-space 选项卡而不是 2-space 选项卡,为什么以及如何修复?
Sublime keeps using 4-space tab for some files instead of 2-space tab even if I've done all the settings, why and how do I fix?
我正在我的 iMac 上使用 Sublime 3.2.2 编辑文件。
我已经将制表符大小设置为 2:
它适用于某些文件但不适用于某些文件 - 剩余的 4 大小的标签。我什至不知道哪个是对的,哪个是错的。
除了设置之外,还有其他需要检查的地方吗?
这里有两点需要考虑。首先,此设置(此处显示为默认值):
// Set to false to disable detection of tabs vs. spaces on load
"detect_indentation": true,
启用此设置后,将在打开文件时对其进行检查以尝试检测其缩进方式。这将使用检测到的制表符大小覆盖该特定文件中的 tab_size
,如果文件以特定方式缩进,也可以覆盖 translate_taba_to_spaces
。
默认设置是这样的,这样您就可以使用您的设置来确定您希望如何创建新文件,同时仍然允许您以合理的方式处理现有文件;将其设置为 false
将关闭此检测。
第二点要注意的是,首选项可以按文件类型设置,这也会覆盖用户首选项中对该类型文件的设置。
例如,YAML
个文件应用了这些设置(来自 YAML/YAML.sublime-settings
):
{
// YAML mandates that tabs aren't used for indentation
"translate_tabs_to_spaces": true,
// In practice, editing YAML files with anything other than two space
// indentation is tedious, due to the "- " list prefix
"tab_size": 2,
}
因此,在 YAML 文件中,无论您的设置如何,制表符大小默认为 2,并且强制在制表符上方使用空格。
因此,这里的要点是,如果更改上述检测设置不起作用,请检查该设置是否仅在特定类型的文件中似乎“不起作用”,如果是这样,您可以使用 Preferences > Settings - Syntax Specific
当您打开该类型的文件以强制执行您的设置时。
我正在我的 iMac 上使用 Sublime 3.2.2 编辑文件。
我已经将制表符大小设置为 2:
它适用于某些文件但不适用于某些文件 - 剩余的 4 大小的标签。我什至不知道哪个是对的,哪个是错的。
除了设置之外,还有其他需要检查的地方吗?
这里有两点需要考虑。首先,此设置(此处显示为默认值):
// Set to false to disable detection of tabs vs. spaces on load
"detect_indentation": true,
启用此设置后,将在打开文件时对其进行检查以尝试检测其缩进方式。这将使用检测到的制表符大小覆盖该特定文件中的 tab_size
,如果文件以特定方式缩进,也可以覆盖 translate_taba_to_spaces
。
默认设置是这样的,这样您就可以使用您的设置来确定您希望如何创建新文件,同时仍然允许您以合理的方式处理现有文件;将其设置为 false
将关闭此检测。
第二点要注意的是,首选项可以按文件类型设置,这也会覆盖用户首选项中对该类型文件的设置。
例如,YAML
个文件应用了这些设置(来自 YAML/YAML.sublime-settings
):
{
// YAML mandates that tabs aren't used for indentation
"translate_tabs_to_spaces": true,
// In practice, editing YAML files with anything other than two space
// indentation is tedious, due to the "- " list prefix
"tab_size": 2,
}
因此,在 YAML 文件中,无论您的设置如何,制表符大小默认为 2,并且强制在制表符上方使用空格。
因此,这里的要点是,如果更改上述检测设置不起作用,请检查该设置是否仅在特定类型的文件中似乎“不起作用”,如果是这样,您可以使用 Preferences > Settings - Syntax Specific
当您打开该类型的文件以强制执行您的设置时。