Предоставлено множество функций для просмотра символов вокруг точки.
Здесь описаны несколько простых функций. См. также looking-at в Поиск с помощью регулярных выражений.
В следующих четырех функциях «начало» или «конец» буфера относится к началу или концу доступной части.
Эта функция возвращает символ в текущем буфере в (то есть, сразу после) позиции position. Если position выходит за пределы для этой цели, то либо перед началом буфера, либо в конце или за ним, то значением будет nil. По умолчанию для position используется точка.
В следующем примере предположим, что первый символ в буфере — «@»:
(string (char-after 1))
⇒ "@"
Эта функция возвращает символ в текущем буфере непосредственно перед позицией position. Если position выходит за пределы для этой цели, то либо в начале буфера или до него, либо за его концом, то значением будет nil. По умолчанию для position используется точка.
Эта функция возвращает символ, следующий за точкой в текущем буфере. Это похоже на (char-after (point)). Однако, если точка находится в конце буфера, то following-char возвращает 0.
Помните, что точка всегда находится между символами, и курсор обычно отображается над символом, следующим за точкой. Поэтому символ, возвращаемый following-char, — это символ, над которым находится курсор.
В этом примере точка находится между символами «a» и «c».
---------- Буфер: foo ---------- Gentlemen may cry ``Pea∗ce! Peace!,'' but there is no peace. ---------- Буфер: foo ----------
(string (preceding-char))
⇒ "a"
(string (following-char))
⇒ "c"
Эта функция возвращает символ, предшествующий точке в текущем буфере. См. выше, в following-char, для примера. Если точка находится в начале буфера, preceding-char возвращает 0.
Эта функция возвращает t, если точка находится в начале буфера. Если включен режим сужения, это означает начало доступной части текста. См. также point-min в Точка.
Эта функция возвращает t, если точка находится в конце буфера. Если включен режим сужения, это означает конец доступной части текста. См. также point-max в См. Точка.
Эта функция возвращает t, если точка находится в начале строки. См. Перемещение по строкам текста. Начало буфера (или его доступной части) всегда считается началом строки.
Эта функция возвращает t, если точка находится в конце строки. Конец буфера (или его доступной части) всегда считается концом строки.