[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/multiple-cursors fcbb7a4 152/434: Make mc/cycle-forward an
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/multiple-cursors fcbb7a4 152/434: Make mc/cycle-forward and mc/cycle-backward loop around by default. |
Date: |
Sat, 7 Aug 2021 09:20:15 -0400 (EDT) |
branch: elpa/multiple-cursors
commit fcbb7a4df99eb37c2fe7589c3a8ac1dcbe953395
Author: Marco Baringer <mb@bese.it>
Commit: Marco Baringer <mb@bese.it>
Make mc/cycle-forward and mc/cycle-backward loop around by default.
Instead of erroring if there is no next (respectively previous) cursor
mc/cycle-forward (respectively mc/cycle-backward) will just loop back
to the first (respectively last) cursor.
---
mc-cycle-cursors.el | 32 ++++++++++++++++++++------------
1 file changed, 20 insertions(+), 12 deletions(-)
diff --git a/mc-cycle-cursors.el b/mc-cycle-cursors.el
index f70a96a..2aaade0 100644
--- a/mc-cycle-cursors.el
+++ b/mc-cycle-cursors.el
@@ -54,23 +54,31 @@
(setq prev cursor))))
prev))
-(defun mc/cycle-forward ()
- (interactive)
+(defun mc/cycle-forward (&optional error-if-no-next-cursor)
+ (interactive (list prefix-arg))
(let ((next-cursor (mc/next-cursor-after-point)))
- (unless next-cursor
+ (cond
+ (next-cursor
+ (mc/create-fake-cursor-at-point)
+ (mc/pop-state-from-overlay next-cursor)
+ (recenter))
+ (error-if-no-next-cursor
(error "We're already at the last cursor"))
- (mc/create-fake-cursor-at-point)
- (mc/pop-state-from-overlay next-cursor)
- (recenter)))
+ (t
+ (mc/cycle-backward t)))))
-(defun mc/cycle-backward ()
- (interactive)
+(defun mc/cycle-backward (&optional error-if-no-previous-cursor)
+ (interactive (list prefix-arg))
(let ((prev-cursor (mc/prev-cursor-before-point)))
- (unless prev-cursor
+ (cond
+ (prev-cursor
+ (mc/create-fake-cursor-at-point)
+ (mc/pop-state-from-overlay prev-cursor)
+ (recenter))
+ (error-if-no-previous-cursor
(error "We're already at the first cursor"))
- (mc/create-fake-cursor-at-point)
- (mc/pop-state-from-overlay prev-cursor)
- (recenter)))
+ (t
+ (mc/cycle-forward t)))))
(define-key mc/keymap (kbd "C-v") 'mc/cycle-forward)
(define-key mc/keymap (kbd "M-v") 'mc/cycle-backward)
- [nongnu] elpa/multiple-cursors df5f83a 082/434: Add more common commands to run only once., (continued)
- [nongnu] elpa/multiple-cursors df5f83a 082/434: Add more common commands to run only once., ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors 576bf90 087/434: mc version of mark-previous-like-this, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors 0d89125 089/434: Added mc-version of mark-all-like-this, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors f42e467 090/434: Added mc-version of mark-all-in-region, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors b912bf8 096/434: Always require multiple-cursors-core, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors 0233ba8 092/434: Add commands to run-once-list, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors ef2226b 116/434: Consolidate kill-ring entries when exiting multiple-cursors-mode, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors d5a9d57 132/434: Add minibuffer-complete-and-exit to default run-once list., ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors b48e2b7 137/434: mc/edit-lines: Don't include the 'invisible' line, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors ae0033f 140/434: Protect post-command-hook from errors to avoids undead cursors, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors fcbb7a4 152/434: Make mc/cycle-forward and mc/cycle-backward loop around by default.,
ELPA Syncer <=
- [nongnu] elpa/multiple-cursors 876937b 153/434: Use (interactive "P") instead of the weird (but equivalent) (interactive (list prefix-arg)), ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors 1ec78e1 162/434: Don't let mc/mark-lines create 'double' cursors., ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors 1074c88 178/434: Added mc/mark-all-like-this-dwim, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors 9582c72 204/434: Add mc/insert-numbers, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors d534132 122/434: Remove todo.org - use issues instead, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors f7d393d 128/434: Don't use next-line and previous-line in non-interactive ways., ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors fc59b63 131/434: Fix typo, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors d98b85b 138/434: Bump to 1.1.2, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors 6e9ea1a 149/434: Merge pull request #20 from tkf/diff-friendly-save-lists, ELPA Syncer, 2021/08/07
- [nongnu] elpa/multiple-cursors 6d4979d 144/434: Bump to 1.1.3, ELPA Syncer, 2021/08/07