Feature Request: Built-in text/content search across files
- Lingua principale
- Rust
- Stelle
- 22.5k
- Fork
- 773
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
## Feature Request
**Summary:**
GitUI currently does not provide a built-in way to search for text or content across files in a repository. Users who want to find a specific string, pattern, or piece of code must leave the GitUI interface and use an external tool (e.g. `grep`, `rg`, or their editor's search).
**Expected Behavior:**
GitUI should include a built-in file content search (similar to `grep` / `ripgrep`) that allows users to:
- Enter a search query (plain text or regex)
- See matching files and line previews directly within the TUI
- Navigate to a specific match in context
**Why This Matters:**
Code review and diff inspection workflows often require looking up where a symbol or string is used across the repository. Having to switch out of GitUI to a separate terminal search breaks the flow and reduces the tool's usefulness as a self-contained Git UI.
**Possible Approach:**
- Add a dedicated search panel (e.g. reachable via a keybinding like `/` or a dedicated shortcut)
- Internally delegate to `git grep` or an optional `ripgrep`/`grep` backend
- Display results in a scrollable list with file path, line number, and a snippet of the matching line
- Allow jumping into the diff/file view from a result
**Alternatives Considered:**
- Using `git grep` manually in a separate terminal — works but requires context switching
- Using editor search — not available when GitUI is the primary interface
**References:**
- Similar feature in other TUI Git clients (e.g. lazygit's filter/search capabilities)
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
No files or tests are identified; start by examining the existing TUI entry points for keybindings, panels, and the diff/file view. Define the search panel around the proposed `/` shortcut and evaluate `git grep` or an optional ripgrep/grep backend. Done means users can query text or regex, browse file paths with line previews, and jump to a match in context.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- git, rust
- Ambito
- cli, devtools, search
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 42/100