Присвойте контурную карту полученному режиму в emacs

Как я могу присвоить контурную карту полученному режиму в emacs (я использую define-derived-mode функция). Существует a derived-mode-set-keymap функционируйте, но без примеров или хорошей документации.

6
задан Rupert Jones 7 February 2010 в 10:01
поделиться

1 ответ

define-производный-режим сам создает раскладку клавиатуры с именем MODE-map, где MODE - это имя раскладки клавиатуры, которую вы только что определили. . Я не уверен, что делает derive-mode-set-keymap , что еще не сделано с define-производным-режимом ; глядя на источник, они делают похожие вещи, и я не уверен в очень низкоуровневых различиях между ними (например, define-производный режим оставляет раскладку клавиатуры родительского режима в качестве родителя нового keymap, в то время как `derive-mode-set-keymap также объединяет раскладки клавиатуры; в чем функциональная разница между ними?).

Если вы сделаете следующее:

(define-derived-mode foobar-mode text-mode "foo")

Тогда будут определены следующие переменные:

  • foobar-mode-abbrev-table
  • foobar-mode-hook
  • foobar-mode-map
  • foobar -mode-syntax-table

Затем вы можете начать манипулировать любым из них по своему усмотрению.

6
ответ дан 17 December 2019 в 02:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: