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