[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/vertico 3257082 07/48: always keep index when explicitl
From: |
Stefan Monnier |
Subject: |
[elpa] externals/vertico 3257082 07/48: always keep index when explicitly navigating |
Date: |
Mon, 5 Apr 2021 10:54:40 -0400 (EDT) |
branch: externals/vertico
commit 325708273500f86bfdf77afcc36086b4ea1f0e1b
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>
always keep index when explicitly navigating
---
minicomp.el | 32 +++++++++++++++++++-------------
1 file changed, 19 insertions(+), 13 deletions(-)
diff --git a/minicomp.el b/minicomp.el
index b138353..6ca97dc 100644
--- a/minicomp.el
+++ b/minicomp.el
@@ -195,14 +195,15 @@
(pcase (let ((while-no-input-ignore-events '(selection-request)))
(while-no-input (minicomp--candidates input metadata)))
(`(,base ,total ,candidates)
- (if-let* ((old (and candidates
- minicomp--keep
- (>= minicomp--index 0)
- (nth minicomp--index minicomp--candidates)))
- (idx (seq-position candidates old)))
- (setq minicomp--index idx)
- (setq minicomp--keep nil
- minicomp--index (if candidates 0 -1)))
+ (unless (and minicomp--keep (< minicomp--index 0))
+ (if-let* ((old (and candidates
+ minicomp--keep
+ (>= minicomp--index 0)
+ (nth minicomp--index minicomp--candidates)))
+ (idx (seq-position candidates old)))
+ (setq minicomp--index idx)
+ (setq minicomp--keep nil
+ minicomp--index (if candidates 0 -1))))
(setq minicomp--base base
minicomp--input input
minicomp--total total
@@ -277,7 +278,6 @@
(defun minicomp--exhibit ()
"Exhibit completion UI."
- (setq minicomp--keep (or minicomp--keep (> minicomp--index 0)))
(let ((metadata (completion--field-metadata (minibuffer-prompt-end)))
(input (minibuffer-contents-no-properties)))
(unless (equal minicomp--input input)
@@ -287,34 +287,40 @@
(defun minicomp-beginning-of-buffer ()
"Go to first candidate."
(interactive)
- (setq minicomp--index (if (> minicomp--total 0) 0 -1)))
+ (setq minicomp--index (if (> minicomp--total 0) 0 -1)
+ minicomp--keep t))
(defun minicomp-end-of-buffer ()
"Go to last candidate."
(interactive)
- (setq minicomp--index (- minicomp--total 1)))
+ (setq minicomp--index (- minicomp--total 1)
+ minicomp--keep t))
(defun minicomp-scroll-down ()
"Go back by one page."
(interactive)
+ (setq minicomp--keep t)
(when (>= minicomp--index 0)
(setq minicomp--index (max 0 (- minicomp--index minicomp-count)))))
(defun minicomp-scroll-up ()
"Go forward by one page."
(interactive)
+ (setq minicomp--keep t)
(when (>= minicomp--index 0)
(setq minicomp--index (min (- minicomp--total 1) (+ minicomp--index
minicomp-count)))))
(defun minicomp-next ()
"Go to next candidate."
(interactive)
- (setq minicomp--index (min (1+ minicomp--index) (- minicomp--total 1))))
+ (setq minicomp--index (min (1+ minicomp--index) (- minicomp--total 1))
+ minicomp--keep t))
(defun minicomp-previous ()
"Go to previous candidate."
(interactive)
- (setq minicomp--index (max -1 (- minicomp--index 1))))
+ (setq minicomp--index (max -1 (- minicomp--index 1))
+ minicomp--keep t))
(defun minicomp-exit ()
"Exit minibuffer with current candidate."
- [elpa] branch externals/vertico created (now 1a9b1b2), Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 3257082 07/48: always keep index when explicitly navigating,
Stefan Monnier <=
- [elpa] externals/vertico e2472d1 13/48: simplify, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 9355d05 01/48: minicomp - initial commit, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 933e938 06/48: Compute history hash table only once, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico f132f1b 10/48: improve prompt selection, add minicomp--goto, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 9b81d8d 08/48: remove ./ and ../ from file completion candidates, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 5bbddb0 03/48: add while-no-input-ignore-events, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 4ce7c8d 11/48: use seq-subseq, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico f558f53 04/48: extract minicomp--pred, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 9db7c78 20/48: add minicomp-count-format, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 245944a 21/48: remap previous/next-line, Stefan Monnier, 2021/04/05