我学会了复制一些杀死缓冲区的东西,我可以使用kill-new buffer
(kill-new (file-truename buffer-file-name))
如何将内容复制到剪贴板? emacs / elisp是否提供此功能?
我得到了2个答案,但答案似乎适用于X windows系统。当我使用Aquamacs时,它可能不是可以应用于我的问题的通用解决方案。
答案 0 :(得分:2)
(x-set-selection nil (file-truename buffer-file-name))
Documentation for x-set-selection说:
此功能设置“选择” X服务器。它需要两个参数: 选择类型类型和值 分配给它的数据。如果数据为零, 它意味着清除选择。 否则,数据可能是字符串,a 符号,整数(或两个缺点 整数或两个整数的列表),a 叠加,或两个标记的缺点 指向同一个缓冲区。一个 覆盖物或一对标记站立 对于覆盖中或文本之间的文本 标记。
参数数据也可以是矢量 有效的非向量选择值。
每种可能的类型都有自己的类型 选择值,改变 独立。通常的价值观 类型是PRIMARY,SECONDARY和 剪贴板;这些都是符号 大写名称,与X一致 窗口系统约定。如果是类型 无,这代表PRIMARY。
答案 1 :(得分:2)
您可以将Emacs配置为自动复制到系统剪贴板以及kill ring。函数kill-new
调用interprogram-cut-function
,如果有的话,通常会复制到系统剪贴板。在X Window下,变量x-select-enable-clipboard
控制是使用主选择还是剪贴板。