Spec-Zone.ru › Elisp

Основные базовые режимы

Помимо 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

Spec-Zone.ru

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