diff options
| author | Daniel Mendler <mail@daniel-mendler.de> | 2023-12-07 11:49:09 +0100 |
|---|---|---|
| committer | Daniel Mendler <mail@daniel-mendler.de> | 2023-12-07 11:52:03 +0100 |
| commit | 1126bc66a517383d016cba0bfc673d1449025dfa (patch) | |
| tree | 3d51fdfaff5fb6f183ae62286846cbcdf7335d48 | |
| parent | 08d084c58f13d3eb7247c4ff0360c9802be9c40a (diff) | |
corfu--in-region: Expand first before computing candidates for cycling
| -rw-r--r-- | corfu.el | 14 |
1 files changed, 7 insertions, 7 deletions
@@ -854,16 +854,16 @@ or if the last invoked command is not listed in (when exit (funcall exit str 'finished)) t) (`(,newstr . ,newpt) - (let* ((state (corfu--recompute str pt table pred)) + (unless (markerp beg) (setq beg (copy-marker beg))) + (setq end (copy-marker end t) + completion-in-region--data (list beg end table pred)) + (unless (equal str newstr) + (corfu--replace beg end newstr)) + (goto-char (+ beg newpt)) + (let* ((state (corfu--recompute newstr newpt table pred)) (base (alist-get 'corfu--base state)) (total (alist-get 'corfu--total state)) (candidates (alist-get 'corfu--candidates state))) - (unless (markerp beg) (setq beg (copy-marker beg))) - (setq end (copy-marker end t) - completion-in-region--data (list beg end table pred)) - (unless (equal str newstr) - (corfu--replace beg end newstr)) - (goto-char (+ beg newpt)) (if (= total 1) ;; If completion is finished and cannot be further completed, ;; return 'finished. Otherwise setup the Corfu popup. |
