HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
minad
consult
Emacs Lisp2021–2025
minad / consult

consult

:mag: consult.el - Search and navigate via completing-read

8Distinct people
11Mentions
0Explicit recommenders
1.7KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

:mag: consult.el - Search and navigate via completing-read

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year11 dated mentions

Observed mentions: 2021-08-06 23:26:41 UTC to 2025-07-17 06:56:25 UTC.

012342021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20212022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments20232024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2025

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC101
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC404
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC303
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC101
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC202

What Hacker News says

11 sources
Install the latest emacs release and you will be able to do `M-x eglot` – this by default knows about language servers for many programming languages, so if you e.g. do this while in a C++ file in some project, it will start clang or ccls (whatever's in PATH); the language server will then be active for all files in that project and you can use `M-.` (xref-find-definitions), `M-,` (xref-go-back), `M-?` (xref-find-references). Try also `M-x eglot-code-actions` on a symbol to see all available actions (renaming, add imports, refactoring etc.; what you get here depends on the language server). I also use this plugin https://github.com/minad/consult which has the command `consult-ripgrep`, very useful for e.g. looking up all occurrences of the symbol at point (and text navigation across multiple files). For "AI", start with https://github.com
Read the rest
/karthink/gptel/ (its README lists alternative packages, as you can see there is no lack of llm support in emacs, both chat, "agents" and more specific use-cases)
In Show HN: A 'Choose Your Own Adventure' written in Emacs Org Mode
It’s very hard to describe without a visual but the gist of it is that the combination of the following 3 packages make it possible dynamically create queries, refine the results to precisely what you want, and then either perform some action on them or just plop them into a buffer for later use. There’s some notion of a type of the result, which means that the actions and results can be richer than just plaintext. Ie: you can imagine a query over a list of commits, where it displays while you’re searching as only the commit shortrev and subject, but where you can viably define a filter on the commit date or commit author. You can then export that list to a temporary buffer, and pressing enter on any given commit will show you the full diff and the full commit message. Orderless means you’re not crafting regexes directly, but just some co
Read the rest
mbination of words in any order or casing. Another example: grep in the current project for any function matching foo bar baz in any order followed by an open paren, restrict the search to only header files, export to a buffer, run search in replace in that temporary buffer, review the changes, then commit the modification to disk in every matched file with a single keystroke. https://github.com/minad/consult/ https://github.com/oantolin/orderless/ https://github.com/oantolin/embark/
In EmacsConf 2024 Notes
That's fair, I see many examples in this thread where people pass an exact string directly to grep, as you do. I'm an avid grepper, but my grep tool [1] translates spaces to ".*?", so I would just type "func lart(" in that example and it would work. An incremental grep tool with just this one transformation rule gets you a lot more mileage out of grep. [1] https://github.com/minad/consult/blob/screenshots/consult-li... EDIT: Better demo https://jumpshare.com/s/zMENBSr2LwwauJVjo1wS
In Greppability is an underrated code metric
Using Ripgrep via Consult [1] in Emacs is bliss. It's like the rg+fzf thing that some have made, but all inside Emacs. I use the `consult-ripgrep` command all the time, and sometimes I use it to make project-wide edits too! Workflow is search with `consult-ripgrep` -> export results to buffer -> edit buffer -> commit edits back to files. Details at [2] (includes video of me working it) [1]: https://github.com/minad/consult#grep-and-find [2]: https://lambdaland.org/posts/2023-05-31_warp_factor_refactor...
In Ripgrep is faster than grep, ag, Git grep, ucg, pt, sift (2016)
While we're on the topic of finding stuff in Emacs, check out the `consult-ripgrep` [1] command from the Consult package by Daniel Mendler. Consult coupled with Orderless [2] package is a super power. You can even export the results (using Embark [3]) into a wgrep buffer, make edits on just the search results, and have them applied across the code base! [1]: https://github.com/minad/consult#grep-and-find [2]: https://github.com/oantolin/orderless [3]: https://github.com/oantolin/embark
In Fuzzy Finding with Emacs Instead of Fzf
Others have mentioned the awesome projectile, but I think it should be said that Emacs now has built in project.el which has come in leaps and bounds (though probably still lacks some projectile features). I use project.el alongside consult[1] which has many convenient wrapper functions over built-in ones, like an enhanced `switch-to-buffer` with project support. I am actually using an even tighter integration called consult-project-extra[2]. The most advanced and overkill solution would probably be to use bufler.el[3] which basically allows you to define your custom logic for buffer grouping. [1] https://github.com/minad/consult [2] https://github.com/Qkessler/consult-project-extra [3] https://github.com/alphapapa/bufler.el
In Emacs for Professionals
I do things like that inside Emacs with the consult-grep command from the Consult package, combined with the Orderless matching style, Embark to collect the results in a buffer. This has several advantages over the command line: - Interactivity: the results are updated live as you type, so you catch typos sooner and can tweak the search terms as you go. - The buffer of search results you collect with Embark is not dead text like it would be in the terminal, instead, each line is a link to the corresponding file taking you to the line that matched. - Wgrep lets you edit all the matching lines in place! Packages referenced: 1. Consult: https://github.com/minad/consult/ 2. Orderless: https://github.com/oantolin/orderless 3. Embark: https://github.com/oantolin/embark 4. Wgrep: http://github.com/mhayashi1120/Emacs-wgrep/raw/master/wgrep....
In New(ish) command line tools

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.