Spec-Zone.ru › Elisp

Конструкции в строке режима

Строки, используемые в качестве конструкций строки режима, могут использовать определённые %-конструкции для подстановки различных типов данных. Ниже приведён список определённых %-конструкций и их значений.

В любом конструкте, кроме ‘%%’, можно добавить десятичное целое число после ‘%’, чтобы указать минимальную ширину поля. Если ширина меньше, поле заполняется пробелами до указанной ширины. Чисто числовые конструкции (‘c’, ‘i’, ‘I’, и ‘l’) заполняются пробелами слева, а другие — справа.

%b

Текущее имя буфера, полученное с помощью функции buffer-name. См. Имена буферов.

%c

Текущий номер столбца курсора, считая с нуля от левого края окна.

%C

Текущий номер столбца курсора, считая с единицы от левого края окна.

%e

Краткое сообщение о нехватке памяти для объектов Lisp, если Emacs близок к исчерпанию памяти. В противном случае — пустая строка.

%f

Имя файла, посещённого последним, полученное с помощью функции buffer-file-name. См. Имя файла буфера.

%F

Заголовок (только в оконной системе) или имя выбранной рамки. См. Основные параметры.

%i

Размер доступной части текущего буфера; в основном (- (point-max) (point-min)).

%I

Аналогично ‘%i’, но размер печатается более читаемо, используя ‘k’ для 103, ‘M’ для 106, ‘G’ для 109 и т. д. для сокращения.

%l

Текущий номер строки курсора, считая внутри доступной части буфера.

%n

‘Сужение’ при активном сужении; в противном случае ничего (см. narrow-to-region в Сужение).

%o

Степень «перемещения» окна по (видимой части) буферу, т. е. размер текста над верхней частью окна, выраженный в процентах от всего текста за пределами окна, или ‘Верх’, ‘Низ’ или ‘Всё’.

%p

Процент текста буфера над верхней частью окна, или ‘Верх’, ‘Низ’ или ‘Всё’. Обратите внимание, что по умолчанию в строке режима эта величина обрезается до трёх символов.

%P

Процент текста буфера, находящегося над нижней частью окна (который включает текст, видимый в окне, а также текст над верхней частью), плюс ‘Верх’ если верхняя часть буфера видна на экране; или ‘Низ’ или ‘Всё’.

%q

Проценты текста, находящегося над верхней и нижней частью окна, разделенные ‘-’, или ‘Всё’.

%s

Состояние дочернего процесса, принадлежащего текущему буферу, полученное с помощью process-status. См. Информация о процессе.

%z

Мнемоники кодировок клавиатуры, терминала и буфера.

%Z

Аналогично ‘%z’, но включая формат конца строки.

%*

‘%’, если буфер только для чтения (см. buffer-read-only); ‘*’, если буфер изменён (см. buffer-modified-p); ‘-’ в противном случае. См. Изменения буфера.

%+

‘*’, если буфер изменён (см. buffer-modified-p); ‘%’, если буфер только для чтения (см. buffer-read-only); ‘-’ в противном случае. Отличается от ‘%*’ только для изменённого буфера только для чтения. См. Изменения буфера.

%&

‘*’, если буфер изменён, и ‘-’ в противном случае.

%@

‘@’, если default-directory (см. Расширение имён файлов) буфера находится на удалённой машине, и ‘-’ в противном случае.

%[

Указание глубины уровней рекурсивного редактирования (не считая уровней минибуфера): одна ‘[’ на каждый уровень редактирования. См. Рекурсивное редактирование.

%]

Одна ‘]’ на каждый уровень рекурсивного редактирования (не считая уровней минибуфера).

%-

Тире, достаточные для заполнения оставшейся части строки режима.

%%

Символ ‘%’ — так включается буквальный символ ‘%’ в строку, в которой разрешены %-конструкции.

Следующая %-конструкция всё ещё поддерживается, но она устарела, так как вы можете получить тот же результат, используя переменную mode-name.

%m

Значение mode-name.

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/_0025_002dConstructs.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API