一般的に、Emacsでバッファローカル変数の値をカスタマイズするにはどうすればよいですか?たとえば、変数w3m-lnum-mode
はbuffer-localですが、を設定(setq w3m-lnum-mode t)
した.emacs
場合、w3mモードのバッファーでの値はnilのままです。どうすればt
w3mメジャーモードに設定できますか?
質問する
794 次
2 に答える
2
メジャーモードには、この種のもののためのフック変数があります。を探しw3m-mode-hook
ます。
(defun my-w3m-hook nil
(setq w3m-lnum-mode t))
(add-hook 'w3m-mode-hook #'my-w3m-hook)
別の関数をフックするための間接参照は絶対に必要というわけではありませんが、フック機能の管理を簡素化します(そうでない場合は、Emacsを再起動するか、既存のフックに何かを追加するためにいくつかのフープをジャンプする必要があります。今必要なのは評価することだけですdefun
フックから呼び出された関数の新しい)。
于 2013-02-09T08:24:34.903 に答える
0
次のようにデフォルトを設定できます。
(setq-default w3m-lnum-mode t)
きめ細かい制御には、RNAerが提案するフックを使用します。私が知る限り、これは通常のローカル変数ではなく、マイナーモード変数です。あなたはおそらく実際にやりたいと思うでしょう(w3m-lnum-mode 1)
。
于 2013-02-09T11:30:20.787 に答える