Основные основные режимы
Помимо основного режима, существуют три основных режима, от которых обычно производятся другие основные режимы: режим текста, режим программирования и специальный режим. Хотя режим текста полезен сам по себе (например, для редактирования файлов с расширением .txt), режимы программирования и специальный режим существуют в основном для того, чтобы от них могли производиться другие режимы.
По возможности новые основные режимы должны быть получены, прямо или косвенно, от одного из этих трех режимов. Одна из причин заключается в том, что это позволяет пользователям настроить один крючок режима (например, prog-mode-hook) для всего семейства соответствующих режимов (например, для всех режимов программирования на языке).
- Команда: text-mode
-
Режим текста — это основной режим для редактирования человеческих языков. Он определяет символы «"» и «\» как имеющие синтаксис пунктуации (см. Таблица классов синтаксиса), и привязывает M-TAB к
ispell-complete-word(см. Правописание в Руководстве по GNU Emacs).Примеры основных режимов, производных от режима текста, — это режим HTML. См. Режимы SGML и HTML в Руководстве по GNU Emacs.
- Команда: prog-mode
-
Режим программирования — это базовый основной режим для буферов, содержащих исходный код языка программирования. Большинство основных режимов языка программирования, встроенных в Emacs, получены от него.
Режим программирования привязывает
parse-sexp-ignore-commentsкt(см. Движение посредством разбора) иbidi-paragraph-directionкleft-to-right(см. Двунаправленный вывод).
- Команда: special-mode
-
Специальный режим — это базовый основной режим для буферов, содержащих текст, специально созданный Emacs, а не непосредственно из файла. Основным режимам, производным от специального режима, задаётся свойство
mode-classсо значениемspecial(см. Конвенции основных режимов).Специальный режим устанавливает буфер в режим только для чтения. Его карта клавиш определяет несколько общих привязок, в том числе q для
quit-windowи g дляrevert-buffer(см. Отмена изменений).Примеры основных режимов, производных от специального режима, — это режим меню буферов, который используется буфером *Список буферов*. См. Вывод существующих буферов в Руководстве по GNU Emacs.
Кроме того, режимы для буферов табличных данных могут унаследовать от режима табличных списков, который, в свою очередь, получен от специального режима. См. Режим табличных списков.
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/Basic-Major-Modes.html