Elisp 以编程方式复制到剪贴板剪贴板

Elisp programmatically copy to clipboard clipboard

我正在尝试将一些 elisp 代码执行的结果复制到我的剪贴板。 我正在寻找可以像那样使用的东西。

(defun generate-string-to-my-clipboard ()
  (magic-function (foo-generate-string)))

执行后,我可以将 (foo-generate-string)

的结果粘贴到我的系统中

我见过使用 kill-regionclipboard-kill-ring-save 的解决方案,但它需要一个区域或缓冲区中某处的字符串才能 select 它。可以用,但感觉有点牵强。

您可以使用 kill-new:

(kill-new "this is copied to clipboard")

(假设 x-select-enable-clipboard 设置为其默认值 t。)

如果您想在不影响 kill-ring 且不依赖于 select-enable-clipboard 的值的情况下执行此操作(即 将其导出到剪贴板以供要使用的其他应用程序),您可以这样做:

(gui-set-selection 'CLIPBOARD "copied to clipboard from Emacs")