我是一名血腥的初学者,所以请耐心等待。
我认为倾斜的最佳方式是潜入。因为我设置了我的Emacs环境,我经常编辑我的init.el
,我想添加一个热键来查找它快速编辑,因为我会在接下来的几周内经常需要它。
我试过了:
(global-set-key [f7] '(find-file "~/.emacs.d/init.el"))
无济于事,下次按下时的答案是:
Wrong type argument: commandp, (find-file "~/.emacs.d/init.el")
我也尝试将它放入一个自己的函数中,模仿一个有效的热键(对于灵巧(global-set-key [f8] 'deft)
):
(defun sz-init-el ()
(interactive)
(find-file "~/.emacs.d/init.el"))
(global-set-key [f7] 'sz-init-el)
那很有用。所以我尝试将(interactive)
添加到我的第一次试用中:
(global-set-key [f7] '((interactive) (find-file "~/.emacs.d/init.el")))
但这不起作用(再次:Wrong type argument: commandp, ...
)。
那么,有没有办法在不先定义函数/命令的情况下设置全局键绑定?或者我必须经过defun
绕道?
感谢您的帮助和解答!
答案 0 :(得分:3)
你需要使用lambda(又名匿名函数):
(global-set-key [f7] (lambda () (interactive) (find-file user-init-file)))
此外,使用变量user-init-file
比硬编码名称更受欢迎。