在模式挂钩中向用户显示消息

showing message to user in mode hook

我正在编写一个钩子以将一些自定义键绑定添加到 org 模式,它看起来像这样:

(defun course-export-org-mode-hook ()
    (define-key org-mode-map (kbd "C-x .") 'my-custom-func)
    (message "Remember that we can use 'C-x .' to run my custom func."))

我想向用户显示最后一行中的消息作为提示,以记住键绑定处于活动状态。

现在发生的情况是,在模式挂钩 运行 期间,消息显示非常简短,但在文件内容实际显示之前。当缓冲区可见时,消息已经消失。

如何在显示文件内容后显示消息,或许让它在屏幕上停留一段时间以便用户有时间阅读?

你的代码对我来说工作正常,所以我认为你的配置中的其他东西正在破坏该消息。您可以尝试使用计时器在任何同步活动完成后设置消息:

(defun course-export-org-mode-hook ()
  (run-with-timer 0 nil (lambda () (message "Remember that we can \
use 'C-x .' to run my custom func."))))