Точка
Точка — это специальная позиция в буфере, используемая многими командами редактирования, включая команды вставки набираемых символов и функции вставки текста. Другие команды перемещают точку по тексту, позволяя редактировать и вставлять текст в разных местах.
Как и другие позиции, точка указывает на место между двумя символами (или перед первым символом, или после последнего символа), а не на конкретный символ. Обычно терминалы отображают курсор над символом, который непосредственно следует за точкой; фактически точка находится перед символом, на котором расположен курсор.
Значение точки — это число не меньше 1 и не больше размера буфера плюс 1. Если действует ограничение области (см. Ограничение области), точка должна находиться в доступной части буфера (возможно, на одном из её концов).
У каждого буфера есть собственное значение точки, независимое от значения точки в других буферах. У каждого окна также есть значение точки, независимое от значения точки в других окнах, отображающих тот же буфер. Поэтому курсор может отображаться в разных позициях в нескольких окнах, показывающих один и тот же буфер. В необходимых случаях мы используем термин точка буфера для обозначения единственной позиции точки в конкретном буфере и термин точка окна для обозначения позиции точки в конкретном окне, показывающем этот буфер. Если буфер отображается только в одном окне, точка буфера и точка этого окна обычно имеют одинаковое значение, поэтому это различие редко имеет значение. Подробнее см. Окна и точка.
- Функция: point
-
Эта функция возвращает значение точки в текущем буфере в виде целого числа.
(point) ⇒ 175
- Функция: point-min
Эта функция возвращает минимальное доступное значение точки в текущем буфере. Обычно это 1, но если действует ограничение области, то это позиция начала области, до которой вы ограничили буфер. (См. Ограничение области.)
- Функция: point-max
Эта функция возвращает максимальное доступное значение точки в текущем буфере. Это
(1+ (buffer-size)), если не действует ограничение области; если оно действует, возвращается позиция конца области, до которой вы ограничили буфер. (См. Ограничение области.)
- Функция: buffer-end flag
Эта функция возвращает
(point-max), если flag больше 0, и(point-min)в противном случае. Аргумент flag должен быть числом.
- Функция: buffer-size &optional buffer
-
Эта функция возвращает общее количество символов в текущем буфере. Если ограничение области не действует (см. Ограничение области),
point-maxвозвращает значение на единицу больше этого числа.Если указать буфер buffer, значение будет равно размеру buffer.
(buffer-size) ⇒ 35(point-max) ⇒ 36
Copyright © 1990-1996, 1998-2026 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Point.html