4

この質問はこの質問と重複している可能性がありますが、私のemacsで次のことが正しく機能しません。

mlint-modeメジャー モードに入るたびにマイナー モードに入ろうとしていますmatlab-mode(どちらのモードもSourceForge ページで利用できます)。私の .emacs ファイルには次のものがあります。

(add-hook 'matlab-mode-hook
      (function (lambda()
                  (mlint-mode))))

これは、上でリンクした質問への回答のようです。ファイルを開く.mと、次のエラーが表示されます。

ファイル モード指定エラー: (void-function mlint-mode)

mlint-modeファイルを開くときに入力する正しいフックを書くのを手伝ってくれる人がい.mますか? FWIW、私はemacs 23.1.50.1を実行しています。

4

1 に答える 1

10

正しい名前は だと思いますmlint-minor-mode。また、すべての matlab が Emacs によって認識されるようにすることを忘れないでください。これは、次を使用して行うことができます。

(require 'matlab-load)

補足として、通常、フックでラムダ関数を使用することはお勧めできません。フックの値を調べると、関連のない多くのことがわかります。また、ラムダ式を変更して再度追加すると、古いバージョンと新しいバージョンの両方がフックされます。

代わりに、次のようなことができます。

(defun my-matlab-hook ()
   (mlint-minor-mode 1))
(add-hook 'matlab-mode-hook 'my-matlab-hook)

"1" は、mlint モードがオンになるか、以前に有効になっている場合はオンのままであることを保証します。

于 2011-09-14T19:02:58.327 に答える