summaryrefslogtreecommitdiff
path: root/lisp/emulation
diff options
context:
space:
mode:
authorKim F. Storm <storm@cua.dk>2003-03-22 00:18:12 +0000
committerKim F. Storm <storm@cua.dk>2003-03-22 00:18:12 +0000
commitf45a683109971529661c08ac422c922aa716fa71 (patch)
tree3cd1200ea314d63d6e546fa06d6279cd211668ec /lisp/emulation
parent16210a2570af045fe4efc47c8c41f883265e34fe (diff)
downloademacs-f45a683109971529661c08ac422c922aa716fa71.tar.gz
(cua-set-mark): Doc fixes.
Allow pop-global-mark to be repeated with C-x C-SPC C-SPC... C-u C-u C-SPC now unconditionally sets the mark.
Diffstat (limited to 'lisp/emulation')
-rw-r--r--lisp/emulation/cua-base.el28
1 files changed, 19 insertions, 9 deletions
diff --git a/lisp/emulation/cua-base.el b/lisp/emulation/cua-base.el
index 9e1f271a7bb..254a6b29c75 100644
--- a/lisp/emulation/cua-base.el
+++ b/lisp/emulation/cua-base.el
@@ -870,18 +870,28 @@ of text."
(defun cua-set-mark (&optional arg)
"Set mark at where point is, clear mark, or jump to mark.
-With no prefix argument, set mark, push old mark position on local mark
-ring, and push mark on global mark ring, or if mark is already set, clear mark.
-With argument, jump to mark, and pop a new position for mark off the ring;
-then it jumps to the next mark off the ring if repeated with no argument, or
-sets the mark at the new position if repeated with argument."
+
+With no prefix argument, clear mark if already set. Otherwise, set
+mark, and push old mark position on local mark ring; also push mark on
+global mark ring if last mark was set in another buffer.
+
+With argument, jump to mark, and pop a new position for mark off
+the local mark ring \(this does not affect the global mark ring\).
+Use \\[pop-global-mark] to jump to a mark off the global mark ring
+\(see `pop-global-mark'\). Repeating the command without the prefix
+jumps to the next position off the local \(or global\) mark ring.
+
+With a double \\[universal-argument] prefix argument, unconditionally set mark."
(interactive "P")
(cond
+ ((and (consp arg) (> (prefix-numeric-value arg) 4))
+ (push-mark-command nil))
((eq last-command 'pop-to-mark-command)
- (if (and (consp arg) (> (prefix-numeric-value arg) 4))
- (push-mark-command nil)
- (setq this-command 'pop-to-mark-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))
+ (setq this-command 'pop-global-mark)
+ (pop-global-mark))
(arg
(setq this-command 'pop-to-mark-command)
(pop-to-mark-command))