changeset 66671:be6d79a520af

(set-mark-command-repeat-pop): New variable. (set-mark-command): Only interpret plan C-@ after a pop as a pop if set-mark-command-repeat-pop is true.
author Richard M. Stallman <rms@gnu.org>
date Thu, 03 Nov 2005 21:41:20 +0000
parents d5afffbc0c96
children 9c71dbde648a
files lisp/simple.el
diffstat 1 files changed, 12 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/simple.el	Thu Nov 03 21:38:35 2005 +0000
+++ b/lisp/simple.el	Thu Nov 03 21:41:20 2005 +0000
@@ -3115,6 +3115,13 @@
       (unless nomsg
 	(message "Mark activated")))))
 
+(defcustom set-mark-command-repeat-pop nil
+  "*Non-nil means that repeating \\[set-mark-command] after popping will pop.
+This means that if you type C-u \\[set-mark-command] \\[set-mark-command]
+will pop twice."
+  :type 'boolean
+  :group 'editing)
+
 (defun set-mark-command (arg)
   "Set mark at where point is, or jump to mark.
 With no prefix argument, set mark, and push old mark position on local
@@ -3147,10 +3154,13 @@
     (if arg
 	(pop-to-mark-command)
       (push-mark-command t)))
-   ((eq last-command 'pop-to-mark-command)
+   ((and set-mark-command-repeat-pop
+	 (eq last-command 'pop-to-mark-command))
     (setq this-command 'pop-to-mark-command)
     (pop-to-mark-command))
-   ((and (eq last-command 'pop-global-mark) (not arg))
+   ((and set-mark-command-repeat-pop
+	 (eq last-command 'pop-global-mark)
+	 (not arg))
     (setq this-command 'pop-global-mark)
     (pop-global-mark))
    (arg