我想用yank覆盖文本,如下所示。有没有办法做到这一点?
杀环:
text-i-want-to-paste
在:
abcdefghijklmnopqrstuvwxyz
^
corsor
后:
text-i-want-to-pasteuvwxyz
感谢。
答案 0 :(得分:6)
开启delete-selection-mode
。然后选择要替换的文本。然后点击C-y
。启用delete-selection-mode
后,您只需键入以替换所选文本,就像通常在Emacs外部一样。 C-y
也取代了它。
答案 1 :(得分:4)
下面:
(defun crazy-yank ()
(interactive)
(delete-char (length (current-kill 0)))
(yank))
(global-set-key (kbd "C-M-y") 'crazy-yank)
答案 2 :(得分:4)
您也可以使用defadvice。然后,只有在打开覆盖模式时才会起作用:
(defadvice yank (before yank-if-overwrite)
(if (bound-and-true-p overwrite-mode)
(delete-char (length (current-kill 0))))
)
(ad-activate 'yank)