4

.dir-locals.el でいくつかの変数を定義したいので、python-mode-hook にフックを追加します。そのフックで、.dir-locals で定義された変数を読み取ります。問題は、.dir-locals.el をロードする前にモード フックが呼び出されることです。

ローディングシーケンスを入れ替えるアイデアはありますか?

4

1 に答える 1

7

順序を入れ替えることはできません。でハードコーディングされていnormal-modeます。

ただし、すべてのローカル変数が設定されたhack-local-variables-hookに実行される at をフックできます。現在、次のものがあるとします。

(defun my-python-hook-function ()
  (message "Hello world"))

(add-hook 'python-mode-hook #'my-python-hook-function)

これを次のように変更するだけです。

(defun my-local-variables-hook ()
  (when (derived-mode-p 'python-mode) (my-python-hook-function)))

(add-hook 'hack-local-variables-hook #'my-local-variables-hook)
于 2013-11-02T11:01:54.440 に答える