From 05125618aa255f5e5e5afee1e0f67f7189840c65 Mon Sep 17 00:00:00 2001 From: Magnar Sveen Date: Sat, 21 Jul 2012 08:45:51 +0200 Subject: [PATCH] Skip lines in rectangular-region-mode that are too short for the rectangle. --- rectangular-region-mode.el | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/rectangular-region-mode.el b/rectangular-region-mode.el index 8226015..16b012b 100644 --- a/rectangular-region-mode.el +++ b/rectangular-region-mode.el @@ -39,17 +39,18 @@ (left-column (if (< point-column anchor-column) point-column anchor-column)) (right-column (if (> point-column anchor-column) point-column anchor-column)) (navigation-func (if (< point-line anchor-line) 'next-line 'previous-line))) - (move-to-column anchor-column t) + (move-to-column anchor-column) (set-mark (point)) - (move-to-column point-column t) + (move-to-column point-column) (mc/save-excursion (while (not (= anchor-line (line-number-at-pos))) (funcall navigation-func) - (move-to-column right-column t) - (move-to-column anchor-column t) - (set-mark (point)) - (move-to-column point-column t) - (mc/create-fake-cursor-at-point))))) + (move-to-column anchor-column) + (when (= anchor-column (current-column)) + (set-mark (point)) + (move-to-column point-column) + (when (= point-column (current-column)) + (mc/create-fake-cursor-at-point))))))) (defun rrm/switch-to-multiple-cursors (&rest forms) (interactive)