当前位置:  开发笔记 > 开发工具 > 正文

Emacs:如何删除没有杀环的文本?

如何解决《Emacs:如何删除没有杀环的文本?》经验,为你挑选了5个好方法。

我想删除一些文本,这样我就可以抽取其他文本而不是它.我怎样才能做到这一点?Cw削减选定的文本以杀死戒指,我最终没有我想要的文本.

此外,是否可以直接抽取文本而不是一些文本,甚至没有按下按钮来杀死它?



1> ashawley..:

M-x delete-region经常键入,但你可以将它绑定到一个键.

使用较新版本的Emacs中的删除选择模式,您无需键入命令即可开始输入:

默认情况下,即使标记处于活动状态,也会正常进行文本插入 - 例如,键入插入字符"a",然后停用标记.删除选择模式(次要模式)会修改此行为:如果启用该模式,则在标记处于活动状态时插入文本会导致首先删除区域中的文本.此外,通常只删除一个字符(例如C-dDEL)的命令将删除整个区域.要打开或关闭"删除选择"模式,请键入M-x delete-selection-mode.


此外,使用最新版本的Emacs,您甚至不需要将`delete-region`绑定到键,因为Backspace现在就这样做了.Backspace删除所选区域而不是删除它,换句话说,Backspace会删除所选文本而不保存/推送到kill ring.这是因为`delete-active-region`的值是`t`,除非你将它自定义为其他值.

2> Eugene Moroz..:

您可以使用M-yafter C-y从kill ring插入前一项,或使用browse-kill-ring包.

至于第二个问题,请参阅DeleteSelectionMode.



3> 小智..:

我有同样的问题.到目前为止,我最接近的是制作一个基本上是小功能:

(defun ruthlessly-kill-line ()
  "Deletes a line, but does not put it in the kill-ring. (kinda)"
  (interactive)
  (move-beginning-of-line 1)
  (kill-line 1)
  (setq kill-ring (cdr kill-ring)))



4> John J. Cami..:

取自EmacsWiki:

相当于‘kill-line’(‘C-k’)但没有杀死环的副作用:

(delete-region (point) (line-end-position))



5> 小智..:

Mx eval-expression(setq kill-ring(cdr kill-ring)) - 从kill-ring中删除最后一项

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有