2021-05-02 19:50:10 +03:00
* PROJ Design Decisions
** TODO bind =consult-lsp-diagnostics= to something?
2021-05-20 21:02:47 +03:00
** WAIT Add keybinding for embark-act outside of the minibuffer
Idealy would replace =C-o= as the default binding. Current suggestion is both
=:leader a= and =C-,= . Note that =C-,= is bound to ~org-cycle-agenda-files~ but
so is =C-'= .
2021-05-02 19:50:10 +03:00
** TODO consider dropping prescient flag
** TODO =SPC s s= and =SPC s S= ~:sw~ ?
2021-04-25 21:36:21 +03:00
There isn't really a selectrum analogue to ~swiper-isearch~ , ~consult-isearch~
2021-05-17 15:44:39 +03:00
does something else (give you previously used isearch search terms). Bound to
regular isearch for now.
2021-05-08 23:36:14 +03:00
** TODO =SPC s B=
2021-05-17 15:44:39 +03:00
Selectrum/Consult don't have a ~swiper-all~ analogue either. Unbound for now.
2021-05-20 21:02:47 +03:00
** TODO orderless style dispatchers
currently we just copy the ones of the consult wiki (sans file extentions), but
these lead to an unexpected issue: typing e.g. =setq!= will not match ~setq!~
due to the postfix without literal match (you need to type =setq!= =). This is
undesireable since doom uses a lot of macros that end with =!= . Having the
dispatching work in both post and prefix is useful (since it lets you do
post-hoc changes to your typing), but having a one-off extention is inconsistant
2021-05-02 19:50:10 +03:00
2021-05-20 17:45:30 +03:00
* 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.
2021-05-02 19:50:10 +03:00
* PROJ Bugs
2021-04-30 00:19:38 +03:00
** TODO =C-SPC= and live previews
2021-05-02 19:50:10 +03:00
Automatic live previews have been disabled on slow ~consult~ commands.
=C-SPC= is partially implemented as the preview key for ~consult-*~ commands.
2021-04-30 00:19:38 +03:00
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.
2021-05-02 19:50:10 +03:00
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
2021-05-17 13:20:02 +03:00
** 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 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.
2021-05-17 13:42:45 +03:00
** 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?
2021-05-20 21:02:47 +03:00
2021-05-02 19:50:10 +03:00
* PROJ Missing Features
2021-04-10 14:59:16 +03:00
** TODO Icons
https://github.com/minad/marginalia/issues/59
2021-05-20 21:02:47 +03:00
** WAIT =C-C C-e= wgrep fun
- rework into using ~embark-export~ directly, after [[https://github.com/oantolin/embark/issues/226 ][this issue ]] gets resolved
- check if we can add this to ~consult-line~ too
2021-05-01 17:55:02 +03:00
** 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
2021-05-02 19:50:10 +03:00
are nontrivial loading order shenanigans happening that make that not straightforward.
** TODO Ivy Parity
2021-05-08 23:36:14 +03:00
*** TODO pass module
2021-05-20 21:02:47 +03:00
*** TODO remaps
refactor these to use consult so previews can work, also maybe have narrowed number keys for workspaces?
#+begin_src elisp
[remap switch-to-buffer] #'+ivy/switch-buffer
[remap switch-to-buffer-other-window] #'+ivy/switch-buffer-other-window
[remap persp-switch-to-buffer] #'+ivy/switch-workspace-buffer
[remap evil-show-jumps] #'+ivy/jump-list
#+end_src
*** TODO ~+irc/selectrum-jump-to-channel~
rework to use ~consult~ buffer narrowing, for some reason the current attempt breaks marginalia annotating
2021-05-08 23:36:14 +03:00
*** 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~ .