mirror of
https://github.com/abo-abo/avy.git
synced 2026-02-04 06:42:26 +00:00
18
avy.el
18
avy.el
@@ -1481,21 +1481,23 @@ The window scope is determined by `avy-all-windows' or
|
||||
(t
|
||||
(user-error "Unexpected `avy-line-insert-style'")))))))
|
||||
|
||||
;;;###autoload
|
||||
;;;###autoload
|
||||
(defun avy-move-region ()
|
||||
"Select two lines and move the text between them above the current line."
|
||||
(interactive)
|
||||
(avy-with avy-move-region
|
||||
(let* ((initial-window (selected-window))
|
||||
(beg (avy--line))
|
||||
(end (save-excursion
|
||||
(goto-char (avy--line))
|
||||
(forward-line)
|
||||
(point)))
|
||||
(let* ((initial-window (selected-window))
|
||||
(beg (avy--line))
|
||||
(end (avy--line))
|
||||
text)
|
||||
(when (> beg end)
|
||||
(cl-rotatef beg end))
|
||||
(setq end (save-excursion
|
||||
(goto-char end)
|
||||
(1+ (line-end-position))))
|
||||
(setq text (buffer-substring beg end))
|
||||
(move-beginning-of-line nil)
|
||||
(delete-region beg end)
|
||||
(delete-region beg end)
|
||||
(select-window initial-window)
|
||||
(insert text))))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user