Emacs 命令剪切或复制到系统剪贴板?

hpy*_*hpy 8 keyboard-shortcuts emacs copy-paste clipboard cut

作为一个非常新的 Emacs 用户,我一直在使用 Ctrl+w 和 Ctrl+y 在 Emacs 中的缓冲区之间进行剪切/复制和粘贴。有没有办法做同样的事情,这样不仅 Emacs,而且整个系统都可以访问我正在复制和粘贴的内容?谢谢。

PS我想在Linux(在X下运行的终端模拟器中)和Mac OS X(例如使用终端)中执行此操作。

小智 7

在 Linux 上,您可以使用xclip.el( https://www.emacswiki.org/emacs/xclip.el ) 将kill-ring终端中运行的 Emacs链接到剪贴板(而不会丢失多杀和猛拉功能)。

安装:M-x package-install RET xclip RET。要使用,只需添加(xclip-mode 1)到您的~/.emacs.


这在 Mac 上不存在,因此我进行了修改xclip.el以使用 OSXpbcopypbpaste实用程序。结果,pbcopy.el可在此处获得:https : //gist.github.com/1023272


Ste*_*n D 5

当 emacs 在 X 下运行时,有多种方法可以实现这一点(如果我理解正确的话)。如果您有最新版本的 emacs,我认为以下几行.emacs创建了最直观的行为:

(global-set-key "\C-w" 'clipboard-kill-region)
(global-set-key "\M-w" 'clipboard-kill-ring-save)
(global-set-key "\C-y" 'clipboard-yank)
Run Code Online (Sandbox Code Playgroud)

与往常一样,组织混乱但内容丰富的EmacsWiki有关于此问题的信息。

但是,当您在终端中运行时,这些设置(以及到目前为止提到的其他设置)不会对您有帮助,因为终端位于 emacs 和 X 之间。如何从终端复制文本通常取决于终端。


dmc*_*ten 1

在 CarbonEmacs(针对 Mac OS X 的原生外观构建)中,在本机应用程序中的命令键之间进行复制和粘贴,在 X 中单击鼠标中键,在 emacs 中单击 C-[w,y] 即可。