# HG changeset patch # User Richard M. Stallman # Date 807693486 0 # Node ID afe7f3c735a3924b71eba19d48ab95963b94713a # Parent 6ee52fbbee7516599c0f0d39e5e8d102921c4af0 (delete-selection-pre-hook): New type value `yank'. (yank): Use `yank' as delete-selection property. diff -r 6ee52fbbee75 -r afe7f3c735a3 lisp/delsel.el --- a/lisp/delsel.el Sun Aug 06 06:27:10 1995 +0000 +++ b/lisp/delsel.el Sun Aug 06 07:18:06 1995 +0000 @@ -51,6 +51,15 @@ (get this-command 'delete-selection)))) (cond ((eq type 'kill) (delete-active-region t)) + ((eq type 'yank) + ;; Before a yank command, + ;; make sure we don't yank the same region + ;; that we are going to delete. + ;; That would make yank a no-op. + (if (string= (buffer-substring (point) (mark)) + (car kill-ring)) + (current-kill 1)) + (delete-active-region nil)) ((eq type 'supersede) (if (delete-active-region nil) (setq this-command '(lambda () (interactive))))) @@ -62,7 +71,7 @@ (put 'self-insert-command 'delete-selection t) (put 'self-insert-iso 'delete-selection t) -(put 'yank 'delete-selection t) +(put 'yank 'delete-selection 'yank) (put 'insert-register 'delete-selection t) (put 'delete-backward-char 'delete-selection 'supersede)