1.3.3 缩进
优质
小牛编辑
126浏览
2023-12-01
概述
缩进设置决定一个 tab 表示多少个空格,并控制 tab 键是控制输入 tab 还是空格。除了自动检测外,还可以全局定制、按文件类型定制或按单文件定制。
设置
tab_size | 数值类型,一个 tab 等价于几个空格 |
---|---|
translate_tabs_to_spaces | 布尔类型,把 tab 转成空格,也就是说按下 tab 键会输入 tab_size 规定个数的空格。 |
detect_indentation | 布尔类型,默认为 true,加载文件时会自动检测用 tab 还是空格对文件进行缩进。 |
use_tab_stops | 布尔类型,如果 translate_tabs_to_spaces 值为 true,use_tab_stops 将使按下 tab 或回退键时插入或删除直接到下一个 tab 位。 |
设置文件
设置文件按以下顺序被调用:
- Packages/Default/Preferences.sublime-settings
- Packages/Default/Preferences ().sublime-settings
- Packages/User/Preferences.sublime-settings
- Packages//.sublime-settings
- Packages/User/.sublime-settings
一般来说,你应该把设置放到Packages/User/Preferences.sublime-settings
中,如果你想给特定文件类型指定一些设置,如 Python,你应该把设置放到Packages/User/Python.sublime-settings
中。
示例
{
"tab_size": 4,
"translate_tabs_to_spaces": false
}
Per-syntax 设置
这种类型的设置是基于每一种语法来定的,常见的用途是不同的文件类型有不同的缩进和配色方案。
你可以通过菜单栏的Preferences/Settings - More/Syntax Specific - User编辑当前语法的设置。
缩进检测
当一个文件加载时,它的内容就会被检测,tab_size
和translate_tabs_to_spaces
就会被设置。状态区域将显示这个何时发生,一般情况这都能正常工作,你可以通过设置detect_indentation
来禁用它。
可以通过View/Indentation/Guess Settings手动运行缩进检测。
Tab 和空格的转换
菜单栏中View/Indentation有一些指令来进行各种转化,他们将运行expand_tabs
和unexpand_tabs
指令。
自动缩进
自动缩进将检测前面的缩进以便按下回车键时可以正常缩进,它由以下设置控制:
auto_indent | 布尔值,默认 true,启用自动缩进。 |
---|---|
smart_indent | 布尔值,默认 true,使自动缩进更加智能。如:在 C 语言中的 if 语句下一行进行缩进。 |
trim_automatic_white_space | 布尔值,默认 true,删除自动缩进添加的空白符。 |
indent_to_bracket | 布尔值,默认 false,缩进时自动缩进到第一个开括号的位置,如下 |
use_indent_to_bracket(to_indent,
like_this);