この質問はthis questionと重複しているかもしれませんが、私のemacsで正しく動作するようにはできません。Emacsでメジャーモードのマイナモードに入る
メジャーモードmatlab-mode
(どちらのモードもtheir SourceForge pageで利用可能)に入ると、マイナーモードmlint-mode
に入力しようとしています。私は.emacsファイルに以下を書いています。
(add-hook 'matlab-mode-hook
(function (lambda()
(mlint-mode))))
私は上記の質問に答えているようです。 .m
ファイルを開くときに、私は次のエラーを取得する:
File mode specification error: (void-function mlint-mode)
誰かが私が.m
ファイルを開くときmlint-mode
を入力するための正しいフックを書くうえで支援していただけますか? FWIW、私はemacs 23.1.50.1を実行しています。
なぜ、(add-hook 'matlab-mode-hook' mlint-mode) 'だけではないのですか?実際にマイナーモードをロードしてもよろしいですか? –
これは私が試した最初のもので、うまくいかなかった。以下の@Lindydancerの答えを参照してください。 –
ほとんどのマイナーモードは、引数なしで呼び出されたときに機能を切り替えるので、そうしないのです(対話的に呼び出す場合と同じです)。したがって、すでにmlintモードがバッファに対して有効になっていて、matlab-modeに変更した場合、上記のフォームはmlintモードをオフに切り替える効果があります。そのため、フック機能を使用してマイナーモードを有効にする場合は、通常、引数(頻繁に1またはtが、適切なドキュメント文字列をチェックする)を渡します。 – phils