fix(company): completing-read interface on C-S-s

C-S-s while company is completing shoudl bring up the results in your
completion framework of choice (ivy, helm, vertico, etc), but failed to
do so for vertico (for any completion backend besides company-capf
perhaps).
This commit is contained in:
Henrik Lissner 2022-10-04 02:03:03 +02:00
parent 57e99650d3
commit 58fb83c98e
No known key found for this signature in database
GPG key ID: B60957CA074D39A3
2 changed files with 16 additions and 3 deletions

View file

@ -155,3 +155,18 @@ C-x C-l."
(let ((company-selection-wrap-around t))
(call-interactively #'+company/dabbrev)
(company-select-previous-or-abort)))
;;;###autoload
(defun +company/completing-read ()
"Complete current company candidates in minibuffer.
Uses ivy, helm, vertico, or ido, if available."
(interactive)
(cond ((modulep! :completion ivy)
(call-interactively #'counsel-company))
((modulep! :completion helm)
(call-interactively #'helm-company))
((not company-candidates)
(user-error "No company candidates available"))
((when-let (cand (completing-read "Candidate: " company-candidates))
(company-finish cand)))))

View file

@ -142,9 +142,7 @@
"C-u" #'company-previous-page
"C-d" #'company-next-page
"C-s" #'company-filter-candidates
"C-S-s" (cond ((modulep! :completion vertico) #'completion-at-point)
((modulep! :completion ivy) #'counsel-company)
((modulep! :completion helm) #'helm-company))
"C-S-s" #'+company/completing-read
"C-SPC" #'company-complete-common
"TAB" #'company-complete-common-or-cycle
[tab] #'company-complete-common-or-cycle