2

XEmacs 中有一个功能,如果用户在按住 的同时用鼠标选择一个区域Ctrl,所选区域将自动粘贴到当前光标位置。

换句话说,如果您需要将一小段文本从某个打开的缓冲区快速复制到新位置,请将光标放在那里,然后执行Ctrl-mouse-select 即可。

不幸的是,我最近不得不从 XEmacs 切换到 GNU Emacs,我正在寻找那里是否有类似的功能,或者我可以为它提供一个自定义模块(不幸的是,我不擅长 Lisp)。

4

3 回答 3

2

你当然可以,如果我没记错的话,该功能绑定到鼠标按钮 3。我假设是这样,因为单击鼠标滚轮会拉动我在光标处复制的内容。

在大多数情况下,鼠标滚轮 == 鼠标按钮 3。

  1. 使用鼠标选择
  2. 按下鼠标按钮,点击控制
  3. 松开鼠标按钮
  4. 点击鼠标按钮 3
  5. 利润 - 选择在您的光标处猛拉

编辑:

我在http://www.gnu.org/software/emacs/manual/html_node/emacs/Mouse-Commands.html找到了这个

  • 鼠标 1

    将点移动到您单击的位置(鼠标设置点)。

  • 拖动鼠标 1

    通过拖动激活所选文本周围的区域,并将其复制到杀伤环(mouse-set-region)。

  • 鼠标 2

    在单击位置拖动最后一个终止的文本(mouse-yank-at-click)。

  • 鼠标 3

    如果该区域处于活动状态,则将该区域的较近端移动到单击位置;否则,将标记设置为点的当前值,点位于点击位置。将生成的区域保存在杀伤环中;在第二次单击时,将其杀死(鼠标保存然后杀死)。

于 2012-03-27T23:55:19.703 回答
1

将以下内容放入您的 init 文件 ( .emacs):

(require 'mouse-copy)
(global-set-key [C-down-mouse-1] 'mouse-drag-secondary-pasting)

重新启动 Emacs 后,它应该像您在 XEmacs 中习惯的那样工作——按住Ctrl鼠标左键,选择您的文本,当您释放鼠标时,文本将插入到您当前的光标位置。

于 2012-04-25T02:52:55.940 回答
0

你可能想使用mouse-copy.elEmacs 自带的。

于 2012-03-28T14:37:28.143 回答