33.17.1 基础缩进函数

本节描述用于统计和插入缩进的基础函数。后续章节中的函数均基于这些基础函数实现。相关函数参见 See 显示文本尺寸

Function: current-indentation

该函数返回当前行的缩进量,即第一个非空白字符的水平位置。若当前行全为空白,则返回行尾的水平位置。

该函数将不可见文本视为宽度为 0,除非 buffer-invisibility-spec 指定不可见文本显示为省略号。See 不可见文本

Command: indent-to column &optional minimum

该函数从光标位置开始使用制表符和空格进行缩进,直到到达 column 列。 如果指定了 minimum 且非 nil,则至少插入该数量的空格,即便需要超出 column 列。 如果光标已超出 column 列,该函数不执行任何操作。 返回值为插入的缩进结束时所在的列号。

插入的空白字符会继承周围文本的文本属性(通常仅继承前方文本)。See 文本属性的粘性

User Option: indent-tabs-mode

若该变量非 nil,缩进函数可以同时插入制表符和空格;否则仅插入空格。 设置该变量会自动使其在当前缓冲区中生效为缓冲区局部变量。