基本

基本的なモードの定義は、次のような感じ。

(defun foo-mode ()
  "Foo mode の説明"
  (interactive)
  (kill-all-local-variables)
  (use-local-map foo-mode-map)
  (setq mode-name "Foo mode")
  (run-hooks 'foo-mode-hook))

ただし、キーマップ変数 foo-mode-map は別に定義しないといけな い。これは次の節で説明する。

ともかく、kill-all-local-variables で局 所的な変数を消して、新しいキーマップに foo-mode-map を指定 し、モード行に表示する文字列を書いて、最後に foo-mode-hook という hook があれば実行させるわけである。この最後の部分はなくてもいい が、お約束としてつけておくのがいいだろう。また、キーマップの名前も何で もよいが、これもお約束として モード名-map という名前にすべ きだ。


[目次に戻る] [次へ] [Emacs のページに戻る]