我学到了,如果要将某些内容复制到kill缓冲区中,可以使用kill-new缓冲区。
(kill-new (file-truename buffer-file-name))
如何将内容复制到剪贴板?emacs/elisp提供这个功能吗?
新增内容
我得到了两个答案,但是这些答案似乎只适用于X窗口系统。由于我使用的是Aquamacs,它可能不是一个普遍的解决方案,不能解决我的问题。
(x-set-selection nil (file-truename buffer-file-name))
x-set-selection的文档如下:您可以配置Emacs,使其自动复制到系统剪贴板以及kill ring。函数kill-new
调用interprogram-cut-function
,如果有的话,通常会将其复制到系统剪贴板。在X Window下,变量x-select-enable-clipboard
控制使用主选择还是剪贴板。
(setq x-select-enable-clipboard t)
来设置。或者更好的方式(虽然在这种特定情况下并不重要),由于它是一个自定义选项,可以通过自定义界面进行设置。但我认为在Aquamacs中不存在该选项,因为它不是在X下运行的。 - Gilles 'SO- stop being evil'