我想在.dir-locals.el中定义一些变量,然后在python-mode-hook中添加一个hook,在hook中,我想读取.dir-locals中定义的变量。问题是在加载 .dir-locals.el 之前调用了模式挂钩
有什么想法可以交换加载顺序吗?
我想在.dir-locals.el中定义一些变量,然后在python-mode-hook中添加一个hook,在hook中,我想读取.dir-locals中定义的变量。问题是在加载 .dir-locals.el 之前调用了模式挂钩
有什么想法可以交换加载顺序吗?
您不能交换序列。它被硬编码在normal-mode
.
但是,您可以挂接 at hack-local-variables-hook
,它在设置所有局部变量后运行。假设您当前有以下内容:
(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)