Отступ относительно предыдущих строк
В этом разделе описываются две команды, которые сдвигают текущую строку вправо, основываясь на содержимом предыдущих строк.
- Команда: indent-relative &опциональные first-only unindented-ok
-
Эта команда вставляет пробелы в указанную точку, доводя ее до той же колонки, что и следующая точка отступа предыдущей непустой строки. Точка отступа — это любой не-пробельный символ, следующий за пробелами. Следующая точка отступа — это первая точка отступа, расположенная в колонке правее текущей колонки указанной точки. Например, если указанная точка находится под и слева от первого не-пробельного символа строки текста, она перемещается в эту колонку с помощью вставки пробелов.
Если предыдущая непустая строка не имеет следующей точки отступа (т.е., нет точки отступа в колонке правее), то
indent-relativeлибо ничего не делает (если unindented-ok имеет не-nil) либо вызываетtab-to-tab-stop. Таким образом, если указанная точка находится под и справа от последней колонки короткой строки текста, эта команда обычно перемещает указанную точку к следующему табулятору, вставляя пробелы.Если first-only имеет не-
nil, учитывается только первая точка отступа.Значение возвращаемого
indent-relativeявляется непредсказуемым.В следующем примере указанная точка находится в начале второй строки:
This line is indented twelve spaces. ∗The quick brown fox jumped.
Вычисление выражения
(indent-relative nil)приводит к следующему:This line is indented twelve spaces. ∗The quick brown fox jumped.В этом следующем примере указанная точка находится между символами ‘m’ и ‘p’ в строке ‘jumped’:
This line is indented twelve spaces. The quick brown fox jum∗ped.
Вычисление выражения
(indent-relative nil)приводит к следующему:This line is indented twelve spaces. The quick brown fox jum ∗ped.
- Команда: indent-relative-first-indent-point
-
Эта команда сдвигает текущую строку вправо, как предыдущая непустая строка, вызвав
indent-relativeсtв качестве аргумента first-only. Значение возвращаемого результата является непредсказуемым.Если предыдущая непустая строка не содержит точек отступа, расположенных правее текущей колонки, эта команда ничего не делает.
Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Relative-Indent.html