branch: master
commit 6dd560cd2f79bbaad2e0bb757e195f2c32d2cce7
Author: Oleh Krehel <[email protected]>
Commit: Oleh Krehel <[email protected]>
swiper.el (swiper-map): Bind "C-l" to recenter
* swiper.el (swiper-map): Update.
(swiper-recenter-top-bottom): New defun.
(swiper--update-input-ivy): Use `<=' in order for `recenter-top-bottom'
to work.
---
swiper.el | 11 +++++++++--
1 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/swiper.el b/swiper.el
index ffb0f4a..7a418c9 100644
--- a/swiper.el
+++ b/swiper.el
@@ -75,6 +75,7 @@
(defvar swiper-map
(let ((map (make-sparse-keymap)))
(define-key map (kbd "M-q") 'swiper-query-replace)
+ (define-key map (kbd "C-l") 'swiper-recenter-top-bottom)
map)
"Keymap for swiper.")
@@ -94,6 +95,12 @@
(swiper--cleanup)
(exit-minibuffer))))
+(defun swiper-recenter-top-bottom (&optional arg)
+ "Call (`recenter-top-bottom' ARG) in `swiper--window'."
+ (interactive "P")
+ (with-selected-window swiper--window
+ (recenter-top-bottom arg)))
+
(defvar swiper--window nil
"Store the current window.")
@@ -222,8 +229,8 @@ When non-nil, INITIAL-INPUT is the initial search pattern."
(forward-line (1- num))
(isearch-range-invisible (line-beginning-position)
(line-end-position))
- (unless (and (> (point) (window-start))
- (< (point) (window-end swiper--window t)))
+ (unless (and (>= (point) (window-start))
+ (<= (point) (window-end swiper--window t)))
(recenter)))
(let ((ov (make-overlay
(line-beginning-position)