【问题标题】:Emacs, right click to copy selectionEmacs,右键复制选择
【发布时间】:2016-11-19 02:34:07
【问题描述】:

我使用的是 emacs 24,在以前的版本中(我认为是 23)我曾经能够在要复制的区域上单击鼠标右键(copy-region-as-kill ) 到剪贴板。

但该功能不再起作用。它类似于双击右键剪切(yank)仍然有效,但我不知道如何实现单击右键复制。

谢谢。

编辑:

我发现this in the emacs manual 的行为在底部的四个要点中进行了描述。

【问题讨论】:

    标签: emacs


    【解决方案1】:

    啊,我用defadvice解决了它:

    (defadvice mouse-save-then-kill (around mouse2-copy-region activate)
      (when (region-active-p)
        (copy-region-as-kill (region-beginning) (region-end)))
      ad-do-it)
    

    我已经有这个问题很久了,所以当我终于问到这个问题时,我马上就解决了......

    【讨论】:

      【解决方案2】:
      (global-set-key (kbd "<mouse-3>") 'copy-region-as-kill)
      

      【讨论】:

      • 它有效,但它覆盖了双击右键剪切行为,有没有办法两者兼得?
      • 我不确定,试试(global-set-key (kbd "&lt;down-mouse-3&gt; &lt;mouse-3&gt;") 'mouse-save-then-kill)
      • 现在才出现一个弹出菜单。
      • Aquamacs 有一个完全可定制的右键菜单,如果你在 OSX 上的话。我借用了该功能,并将它与 Emacs Trunk 和 Aquamacs 互换使用。
      【解决方案3】:

      根据 mouse-save-then-kill 的文档:

      如果mouse-drag-copy-region 不为零,此命令还会保存 杀戮环的新区域(如果 之前的区域刚刚保存到杀戮环)。

      如果您点击文档的链接 鼠标拖动复制区域:

      这个变量被引入,或者它的默认值被改变了,在 Emacs 24.1 版。

      我认为问题的真正根源在于此默认设置更改为 nil,因此您不需要使用 defadvice。如果你这样做 M-x customize-variable mouse-drag-copy-region 和 将其设置为非零值,例如 t 它应该恢复旧的 行为。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-22
        • 1970-01-01
        • 1970-01-01
        • 2013-07-02
        相关资源
        最近更新 更多