Closed
Description
todo/open for discussion
Seems feature complete? ;)
done
-
consult-info
dynamic info search based onconsult--dynamic-collection
. See Info manual commands needed #634 and Add a ‘consult-info’ command. #128 for an earlier draft. The wiki contains a version ofconsult-info
too. - More efficient
consult-line-multi
reimplementation based onconsult--dynamic-collection
(See More efficient consult-line-multi #644) -
consult-lsp
, available as a separate package -
consult-yasnippet
, available as a separate package -
consult-eglot
, available as a separate package -
,consult-org-clock-in
consult-org-heading
,consult-org-agenda
(See consult-org-heading, consult-org-agenda #276) - Add narrowing to
consult-outline
by using theoutline-level
function (Add narrowing to consult-outline #277) -
consult-xref
show function, see xref branch and Add consult-xref. #216 implemented -
consult-outline
extension for shell prompts (originallyconsult-prompt
which gives a list of all shell/terminal prompts), see consult-prompt UI #130 discussion. Instead of implementing an extension/extra command, set outline-regexp=eshell-prompt-regexp in the eshell-mode-hook as documented in the wiki. -
consult-focus-lines
which uses overlays in contrast to consult-keep-lines implemented -
consult-keep-lines
with preview and filtering using the completion-style implemented -
consult-kmacro
implemented -
consult-completion-at-point
implemented -
consult-flycheck
(see consult-flycheck #51, cycle through errors with preview) implemented -
consult-imenu
implemented -
consult-flymake
implemented -
consult-global-mark
support for global mark ring, ideallyconsult-mark
should show both local and global marks and vial
andg
narrowing via can either narrow to the local ring or the global one implemented -
consult-major-command
list commands corresponding to current major mode, similar to amx-major-mode-commands implemented asconsult-mode-command
-
consult-ripgrep
(see [WIP] Add first implementation of consult-search #68, consider using xref facilities, xref-search-program, xref-matches-in-files) See also https://github.com/travitch/completing-read-xref.el implemented -
consult-match
jump to matches in the buffer, needs dynamic recomputation of candidates, similar toswiper-isearch
, implemented asconsult-line-multi
.
rejected
- transient menu for
consult-ripgrep/grep/...
(See Dirty hack to test transient popup with consult-grep #170 for a prototype, Command flag toggling support for consult--async-command #238). It would be great to have a transient interface implemented as a separate package, based onconsult-ripgrep
etc. consult-kill-lines
andconsult-copy-lines
variants ofkill/copy-matching-lines
in the style ofconsult-focus-lines
(see Command wishlist #6 (comment))consult-org-capture
(See Add org capture function #32 for a draft). I think capturing is better solved by access keys than by completing-read to quickly jump to a capture template.consult-link
(collect all shr/eww/org/buttons links in a buffer and present them for completion, see also Action, target finder, target collector and exporter wishlist oantolin/embark#95 - this gives us an embark target collector for free). Maybe this functionality should not be added here - it would be a better fit for the link-hint package. See alsoffap-menu
.- Evil-specific commands, should be maintained in a separate repository (see also evil-collection, https://github.com/emacs-evil/evil-collection/blob/master/modes/consult/evil-collection-consult.el)
consult-hippie
hippie or dabbrev expand (see First draft: consult-hippie #175 for a draft) rejected, not robust, see First draft: consult-hippie #175 discussion for alternative ideasconsult-fzf
and async functions which keep the background process alive (see experiment experiment: async find #189), the problem is thatfzf
,fzy
etc do not support a pipe-mode. Therefore we cannot use them efficiently, but this may change in the future. For now it is possible to configureconsult-find-command
with a pipe intofzf
. See https://github.com/minad/affeconsult-flyspell
, provided by see https://github.com/d12frosted/flyspell-correct, which usescompleting-read
by default, see also https://github.com/raxod502/selectrum/wiki/Additional-Configuration#correcting-spelling-errors-with-flyspell-correctconsult-flycheck/flymake/error
variants which shows the lines instead of the error. This could be built in to the existing commands via C-u? out of scope, no intention to implement this as of nowconsult-color
out of scope, not sufficiently useful, there are better UIs for color selection than completing-readconsult-emoji
out of scope, could be implemented on top of insert-char by modifying the minibuffer-predicate of read-char-by-name to restrict the character range, now available upstream in Emacs 29consult-linux-app
out of scope, available as a separate package https://github.com/SebastienWae/app-launcherconsult-help
interactive search through documentation, commands in M-x and other symbols (see Search in functions and their descriptions radian-software/selectrum#241 for the suggestion). Note that this is different from what is provided bymarginalia-mode
. I have an implementation in the consult-help branch, see implement consult-help command which allows to search all documentation strings #67. While it would be very nice, it is too slow to be useful. Maybe computing the candidates dynamically would help. not implemented, use embark collect instead for a searchable help- Alternative to
consult-help
- implement generic function which allows to search through marginalia annotations, basically transforming candidates such that they also include the annotations and make them searchable. not implemented, use apropos-documentation or embark collect instead for a searchable help consult-binding
to browse keybindings, out of scope, useembark-bindings
ordescribe-bindings
+consult-focus-lines
/consult-keep-lines
Contributions and new proposals are welcome. Note that Consult focuses on Emacs core functionality. Integrations with external packages should be provided by external packages, e.g., consult-lsp, consult-notmuch, ...
In many cases it is sufficient to use the built-in Emacs completing-read functionality. Therefore dedicated consult-* packages may not be necessary.