为退出绑定快捷键执行出错

绑定快捷键执行自定义函数失败, 请帮忙看看, 谢谢

Wrong type argument: commandp, quit-emacs
Debugger entered--Lisp error: (wrong-type-argument commandp quit-emacs)                                                                                                                            command-execute(quit-emacs)

(defun quit-emacs()
  (recentf-cleanup)
  (recentf-save-list)
  (save-buffers-kill-terminal))

(defun quit-emacs-server()
  (recentf-cleanup)
  (recentf-save-list)
  (save-buffers-kill-emacs))

(defun set-global-keys()
  (interactive)
  ;; common
  (global-set-key (kbd "C-x C-c") 'quit-emacs)
  (global-set-key (kbd "C-x @ C-c") 'quit-emacs-server))

你的interactive应该写在函数里,绑定按键的部分反而可以不用写函数,可以用 general.el等进行绑定。

1 个赞

在函数中增加(interactive)问题解决了, 感谢 :+1: