【发布时间】:2014-03-31 05:06:50
【问题描述】:
我想通过 yank 覆盖文本,如下所示。有没有办法做到这一点?
杀戒:
text-i-want-to-paste
之前:
abcdefghijklmnopqrstuvwxyz
^
corsor
之后:
text-i-want-to-pasteuvwxyz
谢谢。
【问题讨论】:
我想通过 yank 覆盖文本,如下所示。有没有办法做到这一点?
杀戒:
text-i-want-to-paste
之前:
abcdefghijklmnopqrstuvwxyz
^
corsor
之后:
text-i-want-to-pasteuvwxyz
谢谢。
【问题讨论】:
您也可以使用 defadvice。那么这只会在覆盖模式打开时起作用:
(defadvice yank (before yank-if-overwrite)
(if (bound-and-true-p overwrite-mode)
(delete-char (length (current-kill 0))))
)
(ad-activate 'yank)
【讨论】:
打开delete-selection-mode。然后选择要替换的文本。然后点击C-y。启用delete-selection-mode 后,您只需键入以替换 选定的文本,这在Emacs 之外很常见。并且C-y 也替换了它。
【讨论】:
这里:
(defun crazy-yank ()
(interactive)
(delete-char (length (current-kill 0)))
(yank))
(global-set-key (kbd "C-M-y") 'crazy-yank)
【讨论】: