From 2c74d0160a52ecdf6a24ddf70230748a1dc40d01 Mon Sep 17 00:00:00 2001 From: Oleh Krehel Date: Fri, 21 Aug 2015 14:34:07 +0200 Subject: [PATCH] avy.el (avy--generic-jump): Add beg and end optional args * avy.el (avy-goto-char-in-line): Update. Fixes #89 --- avy.el | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/avy.el b/avy.el index 7f1b7e7..459d99f 100644 --- a/avy.el +++ b/avy.el @@ -765,16 +765,17 @@ LEAF is normally ((BEG . END) . WND)." (de-bruijn #'avy--overlay-at-full) (t (error "Unexpected style %S" style)))) -(defun avy--generic-jump (regex window-flip style) +(defun avy--generic-jump (regex window-flip style &optional beg end) "Jump to REGEX. When WINDOW-FLIP is non-nil, do the opposite of `avy-all-windows'. -STYLE determines the leading char overlay style." +STYLE determines the leading char overlay style. +BEG and END delimit the area where candidates are searched." (let ((avy-all-windows (if window-flip (not avy-all-windows) avy-all-windows))) (avy--process - (avy--regex-candidates regex) + (avy--regex-candidates regex beg end) (avy--style-fn style)))) ;;* Commands @@ -796,14 +797,13 @@ The window scope is determined by `avy-all-windows' (ARG negates it)." (defun avy-goto-char-in-line (char) "Jump to the currently visible CHAR in the current line." (interactive (list (read-char "char: " t))) - (let ((avy-all-windows nil)) - (avy-with avy-goto-char - (avy--process - (save-restriction - (narrow-to-region (line-beginning-position) - (line-end-position)) - (avy--regex-candidates (regexp-quote (string char)))) - (avy--style-fn avy-style))))) + (avy-with avy-goto-char + (avy--generic-jump + (regexp-quote (string char)) + avy-all-windows + avy-style + (line-beginning-position) + (line-end-position)))) ;;;###autoload (defun avy-goto-char-2 (char1 char2 &optional arg)