我正在尝试在 Emacs 中实现一个键盘记录器(出于我自己的非恶意目的)。
似乎我可以通过 real-last-command
可靠地捕获最后一个命令在 pre-command-hook
所以,我可以做这样的事情:
(setq keylog-list nil)
(defun my-keylogger-function ()
(setq keylog-list (cons real-last-command keylog-list)))
(add-hook 'pre-command-hook 'my-keylogger-function)
几个移动命令后,我们得到
keylog-list's value is
(describe-variable left-char left-char previous-line previous-line left-char eval-last-sexp)
但是,我也有兴趣捕获这些命令的参数(例如
left-char
的参数,默认情况下为 1
但如果使用前缀参数可能会有所不同。有没有办法访问args?类似
real-last-command-arglist
?
最佳答案
emacs 中还内置了一个键盘记录器:(open-dribble-file)。
关于Emacs 键盘记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16910198/