sci

最果て風呂

Cocoa Emacs のメニューバーについて

Emacs 24.4 になってからメニューバーの「Mto」表示位置が変わってしまった。いろいろと調べてみたものの情報が少なく、結局マイナーモードとすることで解決することにした。

マイナーモードは easy-mmode-define-minor-mode という関数を使って簡単に作ることができる。ここで mto-mode を作ってから、easy-menu-define で定義している global-map の部分を mto-mode-map に変更。これで解決した。

ちなみに easy-menu-define を使う前に mto-mode が定義されていないとエラーになってしまうので、(require 'mto-menu) をする前に記述しておいた。

mto-mode はマイナーモードにしたけれども、常に使うので初期値は t (non nil) として 起動時に有効とするようにした。