selectrum: improve :tools lookup integration

- move `consult-xref` stuff to `:tools lookup` where it belongs
- add selectrum functionality where possible, document what's beyond the
  scope of this PR
This commit is contained in:
Itai Y. Efrat 2021-05-08 23:36:14 +03:00
parent 693eb3c9a4
commit 1fe0ad318b
4 changed files with 20 additions and 13 deletions

View file

@ -6,6 +6,8 @@
** TODO =SPC s s= and =SPC s S= ~:sw~ ?
There isn't really a selectrum analogue to ~swiper-isearch~, ~consult-isearch~
does something else (give you previously used isearch search terms).
** TODO =SPC s B=
Selectrum/Consult don't have a ~swiper-all~ analogue either.
* PROJ Bugs
** TODO =C-SPC= and live previews
@ -38,7 +40,9 @@ main dispatch function like =ivy-bibtex=, rather it has a bunch of different
ones. Binding the ~bibtex-actions-map~ there would probably be better, but there
are nontrivial loading order shenanigans happening that make that not straightforward.
** TODO Ivy Parity
*** TODO lookup module
*** TODO taskrunner module (doesn't seem to be an interface yet)
*** TODO pass module (creating embark-pass can't be that hard)
*** TODO =SPC s B= (~swiper-all~ analogue)
*** TODO pass module
*** WAIT lookup module
- ~dash-docs~ backend (needs to be created)
- ~+lookup--online..~ functionality (needs a consult analogue of ~counsel-search~)
*** WAIT taskrunner module
in all likelihood requires writing ~consult-taskrunner~.

View file

@ -100,12 +100,6 @@
(setq consult-async-input-debounce 0.5)
(setq consult-async-input-throttle 0.8))
(use-package! consult-xref
:defer t
:init
(setq xref-show-xrefs-function #'consult-xref
xref-show-definitions-function #'consult-xref))
(use-package! consult-flycheck
:when (featurep! :checkers syntax)
:after (consult flycheck))

View file

@ -234,8 +234,8 @@ This backend prefers \"just working\" over accuracy."
(defun +lookup-project-search-backend-fn (identifier)
"Conducts a simple project text search for IDENTIFIER.
Uses and requires `+ivy-file-search' or `+helm-file-search'. Will return nil if
neither is available. These require ripgrep to be installed."
Uses and requires `+ivy-file-search', `+helm-file-search', or `+selectrum-file-search'.
Will return nil if neither is available. These require ripgrep to be installed."
(unless identifier
(let ((query (rxt-quote-pcre identifier)))
(ignore-errors
@ -244,6 +244,9 @@ neither is available. These require ripgrep to be installed."
t)
((featurep! :completion helm)
(+helm-file-search :query query)
t)
((featurep! :completion selectrum)
(+selectrum-file-search :query query)
t))))))
(defun +lookup-evil-goto-definition-backend-fn (_identifier)

View file

@ -178,7 +178,13 @@ Dictionary.app behind the scenes to get definitions.")
(funcall orig-fn fetcher alist)))
(use-package! helm-xref
:when (featurep! :completion helm)))
:when (featurep! :completion helm))
(use-package! consult-xref
:when (featurep! :completion selectrum)
:init
(setq xref-show-xrefs-function #'consult-xref
xref-show-definitions-function #'consult-xref)))
;;