75 |
move to with the same argument. |
move to with the same argument. |
76 |
If this command is repeated, it marks the next ARG sexps after the ones |
If this command is repeated, it marks the next ARG sexps after the ones |
77 |
already marked." |
already marked." |
78 |
(interactive "p") |
(interactive "P") |
79 |
(cond ((and (eq last-command this-command) (mark t)) |
(cond ((and (eq last-command this-command) (mark t)) |
80 |
|
(setq arg (if arg (prefix-numeric-value arg) |
81 |
|
(if (> (mark) (point)) 1 -1))) |
82 |
(set-mark |
(set-mark |
83 |
(save-excursion |
(save-excursion |
84 |
(goto-char (mark)) |
(goto-char (mark)) |
85 |
(forward-sexp (or arg 1)) |
(forward-sexp arg) |
86 |
(point)))) |
(point)))) |
87 |
(t |
(t |
88 |
(push-mark |
(push-mark |
89 |
(save-excursion |
(save-excursion |
90 |
(forward-sexp (or arg 1)) |
(forward-sexp (prefix-numeric-value arg)) |
91 |
(point)) |
(point)) |
92 |
nil t)))) |
nil t)))) |
93 |
|
|