首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何配置删除-选择-模式为只删除?

如何配置删除-选择-模式为只删除?
EN

Stack Overflow用户
提问于 2009-06-24 04:01:26
回答 2查看 1K关注 0票数 0

我在Windows上使用GNU Emacs 22.3.1。

在我的Emacs中,我启用了delete-selection-mode,选择一个区域并删除或替换它非常有用。但我有个缺点。

当我对所选内容写入或按DEL时,Emacs不仅会删除文本,还会删除,从而杀死 (a.k.a )。发送到剪贴板*)。这对我来说很烦人,因为我无法控制我的杀人戒指。(剪贴板),可能会造成意想不到的效果。

有一种方法是delete-selection-mode不会杀死文本,只需删除它?也许修改源代码

(*:我已经同步了杀死环和Windows剪贴板,所以对我来说(出于实际目的)是一样的)

EditJun 24,2009年

谢谢,达尼尔坡。即使有特雷·杰克逊的想法,选择仍然是致命的。我找到了原因。

我发现问题不在delete-selection-mode中。问题是,当我选择这个区域时,我用鼠标做了。从来没有想过是鼠标在复制文本。使用set-mark命令和箭头键,文本最终不会被杀死,只会被删除。

我禁用了这个行为,在我的.emacs中写了这个:

代码语言:javascript
复制
(require 'delsel)
(setq mouse-drag-copy-region nil)
(global-unset-key (kbd "<mouse-2>"))
(global-unset-key (kbd "<mouse-3>"))

谢谢你的建议。如果此禁用鼠标行为的方法可能导致与其他选项的冲突,请评论。

EN

回答 2

Stack Overflow用户

发布于 2009-06-24 04:41:04

看起来,您只需修改源代码的一小部分,即进行以下更改:

代码语言:javascript
复制
(defun delete-active-region (&optional killp)
  (delete-region (point) (mark))
  t)

原始代码查看了参数killp,并使用它来决定是否将该区域添加到捕杀环中,您说您从来不想这样做。此更改迫使该区域始终被删除。

现在,您不需要实际修改源代码,只需将函数定义放在(require 'delsel)之后的.emacs中(或者在(delete-selection-mode)之后)。

票数 0
EN

Stack Overflow用户

发布于 2009-06-24 09:23:53

你试过用-Q启动emacs吗?如果我这样做,并且只启用了M-x: delete-selection-mode,我就无法复制您描述的内容。什么都没有被删除?!你能检查一下吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1036325

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档