我想在终端中使用asciinema录制一些Emacs功能的中等长度的截屏视频。我可以开始asciinema
,然后emacs -nw
,进行录制,然后停止。但我发现我总是犯了多个错误。
所以我认为如果我能写一个"脚本"那就太好了。某些格式的击键,将被送到Emacs。就像重放一个键盘宏,但是相当长的一个,并且键之间有延迟(否则录音速度太快)。
这有可能吗?我愿意做一些elisp编程,但不知道从哪里开始。例如,我可以将我的脚本记录为列表,
(list (kbd "C-x C-f") "filename.el" (kbd "C-e") (kbd "C-x C-e") ...)
并迭代它,转换击键并逐字逐字地发送字符串,但我如何"发送"结果给了Emacs?
如果缓冲区切换等可行的话会很棒。
答案 0 :(得分:1)
您可以录制一系列用户操作(键盘,菜单等),创建键盘宏。
简而言之,您使用<f3>
开始录制,<f4>
停止录制。然后,您可以使用<f4>
(相同的键)播放录音。此外,你可以做各种奇特的事情,但这些都是基础。
有关详细信息,请参阅Emacs手册,节点Keyboard Macros。
您可以使用图书馆showkey.el
中的 showkey-tooltip-mode
模式,在工具提示中显示截屏期间使用的按键 - 请参阅ShowKey。
要显示宏记录的键,您需要将选项showkey-tooltip-sleep-time
设置或绑定到大于零的秒数。 (默认情况下它为零,因此您可以通过快速键入来阻止某些键显示。)
选项showkey-tooltip-key-only-flag
控制是否在工具提示中仅显示键,键及其命令。
或者,您可以使用 showkey-log-mode
模式显示密钥的增量日志。