Цикл команд
При запуске Emacs он практически сразу входит в цикл команд редактора. Этот цикл считывает последовательности клавиш, выполняет их определения и отображает результаты. В этой главе мы описываем, как это делается, и подпрограммы, которые позволяют программам Lisp делать это.
| • Обзор команд | Как цикл команд считывает команды. | |
| • Определение команд | Указание того, как функция должна считывать аргументы. | |
| • Интерактивный вызов | Вызов команды, чтобы она считывала аргументы. | |
| • Отличение интерактивного вызова | Делаем команду различимой для интерактивных вызовов. | |
| • Информация о цикле команд | Переменные, установленные циклом команд для вашего изучения. | |
| • Корректировка позиции | Корректировка позиции после выполнения команды. | |
| • События ввода | Как выглядит ввод при его чтении. | |
| • Чтение ввода | Как читать события ввода с клавиатуры или мыши. | |
| • Специальные события | События, обрабатываемые немедленно и индивидуально. | |
| • Ожидание | Ожидание пользовательского ввода или истечения времени. | |
| • Выход | Как работает C-g. Как перехватить или отложить выход. | |
| • Префиксные аргументы команд | Как работают команды для установки префиксных аргументов. | |
| • Рекурсивное редактирование | Вход в рекурсивное редактирование и почему это обычно не нужно. | |
| • Отключение команд | Как цикл команд обрабатывает отключенные команды. | |
| • История команд | Как организована история команд и как к ней получить доступ. | |
| • Макросы клавиатуры | Как реализованы макросы клавиатуры. |
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/Command-Loop.html