selectrum: README changes, TODO overhaul...
- Add explanation for orderless usage - Minor wording improvements
This commit is contained in:
parent
573bd73411
commit
fad34eb718
2 changed files with 38 additions and 29 deletions
|
@ -43,10 +43,11 @@ This module has no prerequisites.
|
||||||
|
|
||||||
* Features
|
* Features
|
||||||
|
|
||||||
Selectrum and friends modify and use the built-in ~completing-read~ function,
|
The packages in this module modify and use the built-in ~completing-read~
|
||||||
used by any function that requires completion. Due to this the full scope of
|
function, which is used by any function that requires completion. Due to this
|
||||||
these packages is too large to cover here, so we will detail Doom-specific
|
the full scope of these packages is too large to cover here and you are
|
||||||
additions:
|
encouraged to go and read their excellent documentation. We will detail
|
||||||
|
Doom-specific additions:
|
||||||
|
|
||||||
** Jump-to navigation
|
** Jump-to navigation
|
||||||
This module provides an interface to navigate within a project using
|
This module provides an interface to navigate within a project using
|
||||||
|
@ -106,7 +107,7 @@ users).
|
||||||
|
|
||||||
https://assets.doomemacs.org/completion/selectrum/search-replace.png
|
https://assets.doomemacs.org/completion/selectrum/search-replace.png
|
||||||
|
|
||||||
** TODO In-buffer searching
|
** In-buffer searching
|
||||||
This module provides some in buffer searching bindings:
|
This module provides some in buffer searching bindings:
|
||||||
|
|
||||||
+ =SPC s s= (~isearch~)
|
+ =SPC s s= (~isearch~)
|
||||||
|
@ -159,6 +160,15 @@ When using orderless to filter through candidates, the default behaviour is for
|
||||||
each space separated input to match the candidate as a regular expression or
|
each space separated input to match the candidate as a regular expression or
|
||||||
literally.
|
literally.
|
||||||
|
|
||||||
|
Note that due to this style of matching, pressing tab does not expand the input
|
||||||
|
to the longest matching prefix (like shell completion), but rather uses the
|
||||||
|
first matched candidate as input. Filtering further is instead achieved by
|
||||||
|
pressing space and entering another input. In essence, when trying to match
|
||||||
|
=foobar.org=, instead of option 1., use option 2.:
|
||||||
|
|
||||||
|
1. (BAD) Enter =foo TAB=, completes to =foobar.=, enter =org RET=
|
||||||
|
2. (GOOD) Enter =foo SPC org RET=
|
||||||
|
|
||||||
Doom has some builtin [[https://github.com/oantolin/orderless#style-dispatchers][style dispatchers]] for more finegrained filtering, which
|
Doom has some builtin [[https://github.com/oantolin/orderless#style-dispatchers][style dispatchers]] for more finegrained filtering, which
|
||||||
you can use to further specify each space separated input in the following ways:
|
you can use to further specify each space separated input in the following ways:
|
||||||
| Input | Description |
|
| Input | Description |
|
||||||
|
|
|
@ -54,41 +54,45 @@ but breaks slightly from the =C-c C-e= = =wgrep= convention.
|
||||||
** TODO keep or discard =C-M-j= and =C-M-k=
|
** TODO keep or discard =C-M-j= and =C-M-k=
|
||||||
Scroll up and down while previewing. Essentially shortcuts for =C-(j|k) C-SPC=.
|
Scroll up and down while previewing. Essentially shortcuts for =C-(j|k) C-SPC=.
|
||||||
I like having them around but I can always just add them to my private config.
|
I like having them around but I can always just add them to my private config.
|
||||||
|
** TODO Annotation Customization
|
||||||
|
Do we want to have the annotations be more like ivy? e.g.
|
||||||
|
- have a project column in the buffer annotations and a relative path? This has some overlap with project narrowing =SPC b B p SPC.
|
||||||
|
- Mark the modified/remote status of the buffer with color, on top of the modification column?
|
||||||
|
- Change colors in general?
|
||||||
|
|
||||||
* PROJ HACKs to be addressed
|
* PROJ HACKs to be addressed
|
||||||
** ~fboundp~ issues
|
** TODO ~fboundp~ issues
|
||||||
Even if the =ivy= module isn't loaded, it's packages can still get loaded by
|
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~
|
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
|
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.
|
first, which is what we do for now.
|
||||||
** ~projectile-switch-project-action~ definition
|
** TODO ~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
|
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.
|
working of this whole set up are a bit opaque to me.
|
||||||
|
|
||||||
* PROJ Bugs
|
* PROJ Review blocking Issues
|
||||||
** 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 Embark export window buffer switching logic
|
** TODO Embark export window buffer switching logic
|
||||||
If we export bookmarks, grep session, or ~find-file~ session, when pressing
|
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
|
enter, it opens the new buffer in another window rather than the main one, even
|
||||||
though at least the bookmark function ostensibly uses
|
though at least the bookmark function ostensibly uses
|
||||||
~pop-to-buffer-same-window~. Ivy gets the window switched in the bookmarks and
|
~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.
|
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
|
** TODO Icons
|
||||||
https://github.com/minad/marginalia/issues/59
|
Partially solved, seems to have interaction with selectrum height issue, so not yet implemented.
|
||||||
|
** TODO Profile selectrum =SPC /= vs ivy =SPC /=
|
||||||
|
** TODO ~(defadvice! +orderless-match-with-one-face..~ causes lexical error
|
||||||
|
probably caused by some doomism
|
||||||
|
https://github.com/oantolin/orderless/issues/41
|
||||||
|
|
||||||
|
* PROJ Upstream Issues
|
||||||
|
** TODO Selectrum separators cause size calculation bug
|
||||||
|
https://github.com/raxod502/selectrum/issues/491
|
||||||
|
** TODO ~selectrum-repeat~ doesn't scroll to previously selected candidate
|
||||||
|
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.
|
||||||
|
|
||||||
|
* PROJ Extra credit
|
||||||
** TODO bibtex-actions improvements?
|
** TODO bibtex-actions improvements?
|
||||||
currently =SPC n b= is bound to a function, but =bibtex-actions= doesn't have a
|
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
|
main dispatch function like =ivy-bibtex=, rather it has a bunch of different
|
||||||
|
@ -102,11 +106,6 @@ straightforward.
|
||||||
*** TODO =C-RET= on minibuffer?
|
*** TODO =C-RET= on minibuffer?
|
||||||
*** TODO pass module
|
*** TODO pass module
|
||||||
*** TODO ~+ivy/jump-list~ analogue
|
*** TODO ~+ivy/jump-list~ analogue
|
||||||
*** TODO marginalia stuff
|
|
||||||
**** TODO (buffer) clearly mark files opened with ~doom/sudo-find-file~ (remote?) with a different color
|
|
||||||
- including remote path in parens maybe
|
|
||||||
**** TODO (buffer) have a project column and use relative paths from that
|
|
||||||
**** TODO better colors?
|
|
||||||
*** WAIT lookup module
|
*** WAIT lookup module
|
||||||
- ~dash-docs~ backend (needs to be created)
|
- ~dash-docs~ backend (needs to be created)
|
||||||
- ~+lookup--online..~ functionality
|
- ~+lookup--online..~ functionality
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue