branch: externals/vertico commit 9d8a33875686ef25d1c97fe4d5d3d3ed1d09ca7f Author: Daniel Mendler <m...@daniel-mendler.de> Commit: Daniel Mendler <m...@daniel-mendler.de>
Improve scrolling behavior --- vertico.el | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/vertico.el b/vertico.el index 98f2f82..de4366a 100644 --- a/vertico.el +++ b/vertico.el @@ -375,11 +375,13 @@ (add-face-text-property 0 (length cand) 'vertico-current 'append cand)) (push cand lines) (setq index (1+ index)))) - (when (> (length lines) vertico-count) - (if (< current-line (- vertico-count 1)) - (setq lines (nthcdr (- (length lines) vertico-count) lines)) - (setcdr (nthcdr (- vertico-count 1) lines) nil))) - (nreverse lines))) + (setq lines (nreverse lines) index (length lines)) + (while (> index vertico-count) + (if (< current-line (/ index 2)) + (nbutlast lines) + (setq current-line (- current-line 1) lines (cdr lines))) + (setq index (- index 1))) + lines)) (defun vertico--display-candidates (lines) "Update candidates overlay `vertico--candidates-ov' with LINES."