some doom functions check the completion module with `fboundp`'s instead of `featurep!`, and counsel can be loaded by using e.g. `lispy`. we add temporary fixes for this by checking for selectrum stuff first, but this should be given a more robust fix later on also we document the selectrum PR's hacks in the TODO.org see discussion on #5013
71 lines
3.9 KiB
Org Mode
71 lines
3.9 KiB
Org Mode
* PROJ Design Decisions
|
|
** TODO bind =consult-lsp-diagnostics= to something?
|
|
** TODO Make sure we have all vanilla keybindings
|
|
** TODO Add keybinding for embark-act outside of the minibuffer
|
|
** TODO consider dropping prescient flag
|
|
** 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). Bound to
|
|
regular isearch for now.
|
|
** TODO =SPC s B=
|
|
Selectrum/Consult don't have a ~swiper-all~ analogue either. Unbound for now.
|
|
|
|
* PROJ HACKs to be addressed
|
|
** ~fboundp~ issues
|
|
Even if the =ivy= module isn't loaded, it's packages can still get loaded by
|
|
other means, such as =lispy= requiring =counsel=. This means that the ~fboundp~
|
|
logic such [[file:~/.emacs.d/modules/config/default/autoload/text.el::(cond ((fboundp 'consult-yank-pop) #'consult-yank-pop) ;;HACK see @ymarco's comment on #5013 and TODO.org][here]] and [[file:~/.emacs.d/core/autoload/projects.el::((fboundp 'selectrum-mode) ;HACK see @ymarco's comment on #5013 and TODO.org][here]] won't work unless the selectrum option is checked
|
|
first, which is what we do for now.
|
|
** ~projectile-switch-project-action~ definition
|
|
Without [[file:~/.emacs.d/modules/ui/workspaces/config.el::;; HACK?? needs review][this]] change new projects don't get opened in a new tab, but the exact
|
|
working of this whole set up are a bit opaque to me.
|
|
|
|
* PROJ Bugs
|
|
** TODO =C-SPC= and live previews
|
|
Automatic live previews have been disabled on slow ~consult~ commands.
|
|
=C-SPC= is partially implemented as the preview key for ~consult-*~ commands.
|
|
Need to get it to work for other selectrum commands such =SPC h f=.
|
|
#+begin_src emacs-lisp
|
|
(let ((embark-quit-after-action nil))
|
|
(map! :map minibuffer-local-map "C-SPC" #'embark-default-action)))
|
|
#+end_src
|
|
gets us close but moves the cursor to the new screen which is undesirable.
|
|
probable best strategy: create an ~embark-preview~ that does this, upstream it.
|
|
** TODO ripgrep height logic bad
|
|
selectrum bug caused by file descriptors
|
|
https://github.com/raxod502/selectrum/issues/491
|
|
** TODO ~(defadvice! +orderless-match-with-one-face..~ causes lexical error
|
|
probably caused by some doomism
|
|
https://github.com/oantolin/orderless/issues/41
|
|
** TODO ~selectrum-repeat~ Issues
|
|
Unlike Ivy, ~selectrum-repeat~ doesn't restore the position of the selection in
|
|
the completion buffer. Seems to be reproduced in ~emacs -Q~. If so, create
|
|
upstream selectrum issue.
|
|
** TODO go over definition of ~+selectrum-file-search~
|
|
check if anything else there needs to be cleaned up.
|
|
** TODO Embark export window buffer switching logic
|
|
If we export bookmarks, grep session, or ~find-file~ session, when pressing
|
|
enter, it opens the new buffer in another window rather than the main one, even
|
|
though at least the bookmark function ostensibly uses
|
|
~pop-to-buffer-same-window~. Ivy gets the window switched in the bookmarks and
|
|
grep case due to a custom ivy occur window switching function.
|
|
** TODO selectrum =SPC /= is much slower than ivy =SPC /=
|
|
requires further investigation. is ~consult-ripgrep~ slower than ~counsel-rg~?
|
|
is it something the custom search function is doing? does ivy cache stuff?
|
|
* PROJ Missing Features
|
|
** TODO Icons
|
|
https://github.com/minad/marginalia/issues/59
|
|
** TODO =C-C C-e= wgrep fun
|
|
check if we can add this to ~consult-line~ too
|
|
** TODO bibtex-actions improvements?
|
|
currently =SPC n b= is bound to a function, but =bibtex-actions= doesn't have a
|
|
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 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~.
|