Skip to content
Terminal > Code

Global search

Ripgrep across the project, grouped per file, opening straight into the editor.


Global search reads file *contents* across the whole project. It is the counterpart to the palette's go-to-file, which matches file *names*.

Opening it

Press ctrl+shift+F. The tools panel opens on the search view with the field already focused, so you can type immediately. You can also reach it from the tools panel's icon strip.

Mel remembers that the panel was open and which view you were on, so it returns the way you left it.

What runs underneath

Mel prefers ripgrep (rg) and falls back to git grep when ripgrep is not installed. The search runs on a background thread, debounced by 300 ms, and is capped at 500 hits so a broad query cannot flood the panel. Nothing is sent anywhere — this is a local search of your own working tree.

The search is rooted at the same place as the project explorer: the active pane's git toplevel, or its working directory when there is no repository.

Options

Two toggles sit inside the input, and changing either re-runs the query:

  • Aa — case-sensitive matching.
  • **.*** — treat the query as a regular expression rather than a literal.

Reading the results

Results are summarised as "N results in M files" and grouped per file, with a collapsible header showing the file name, its directory, and a count badge. Each row shows the matching line with the matched range highlighted, plus path:line.

Click a hit and the file opens in the built-in editor at that line, as a side panel — your terminal stays visible. Drag the editor's header out of the panel to promote the file into its own tab.

Which search do I want?

I want to…Use
Open a file whose name I roughly knowctrl+P, then type part of the path
Find where something is defined or usedctrl+shift+F
Read what just changedctrl+shift+= (the code review panel)
Browse a directory I do not know yetThe project explorer