当前位置: 首页 > 面试题库 >

将Emacs复制/粘贴与系统复制/粘贴集成

吴同
2023-03-14
问题内容

我的.emacs中有(cua-mode
t),因此Cc是复制的,而Cv是粘贴的,就像桌面上的其他大多数程序(Ubuntu,Gnome,Linux)一样。但是,Emacs似乎并未与其他程序共享剪贴板/复制缓冲区。

例如,如果我在Firefox中使用Cc,则可以将SCv粘贴到终端中,或者将Cv粘贴到gedit中。但是,如果我在emacs中使用Cv(或Cy),则无法获得从Firefox复制的内容。

有什么办法可以使这项工作吗?我可以使用另一个命令来访问系统的复制粘贴缓冲区吗?


问题答案:

这适用于我的机器:

;; CUA OS copypasta even in ncurses mode
(case system-type
  ('darwin (unless window-system
             (setq interprogram-cut-function
                   (lambda (text &optional push)
                     (let* ((process-connection-type nil)
                            (pbproxy (start-process "pbcopy" "pbcopy" "/usr/bin/pbcopy")))
                       (process-send-string pbproxy text)
                       (process-send-eof pbproxy))))))
  ('gnu/linux (progn
                (setq x-select-enable-clipboard t)
                (defun xsel-cut-function (text &optional push)
                  (with-temp-buffer
                    (insert text)
                    (call-process-region (point-min) (point-max) "xsel" nil 0 nil "--clipboard" "--input")))
                (defun xsel-paste-function()

                  (let ((xsel-output (shell-command-to-string "xsel --clipboard --output")))
                    (unless (string= (car kill-ring) xsel-output)
                      xsel-output )))
                (setq interprogram-cut-function 'xsel-cut-function)
                (setq interprogram-paste-function 'xsel-paste-function))))


 类似资料:
  • 在Linux上不接触鼠标,在命令模式下的VIM和系统剪贴板之间复制粘贴的最快方法是什么?

  • 文件编辑器中删除、复制、粘贴等操作都是比较常用的功能,普通的文本编辑器这些操作都是需要用鼠标操作。那么Vim 中纯键盘是如何来操作的呢。 1. Vim VS Windows Vim 中的删除、复制、粘贴于 Windows 下的还是有细微不同的,具体看下表: Windows vim 比较 cut delete vim delete 和windows 剪切差不多,不是真正的删除 copy yank 含

  • 我可以使vim粘贴从和到系统的剪贴板?

  • 使用“复制链接”按钮复制链接 导航到其他输入/文本字段 用Ctrl+V粘贴到字段中,并读取该字段的内容以验证 我的测试: 但是,没有任何内容粘贴到该输入(和return)。 谢了!

  • 我可以使用'yy'和'p'复制并粘贴到我的Vim文件中,但是当我从外部复制一些Python代码并尝试在我的Vim文件中执行'p'时,它只会将最后复制的内容粘贴到我的Vim中。 有没有反正我可以同步我的vim和系统剪贴板??