branch: master commit 6dd560cd2f79bbaad2e0bb757e195f2c32d2cce7 Author: Oleh Krehel <ohwoeo...@gmail.com> Commit: Oleh Krehel <ohwoeo...@gmail.com>
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)