A powerful and interactive find-and-replace plugin for Neovim using Telescope.
- 🔍 Project-wide search - Search across your entire codebase
- 📄 Buffer search - Search within the current file
- ✅ Multi-select - Choose exactly which matches to replace
- 👀 Live preview - See all matches with file context
- 🎯 Flexible matching - Case sensitive/insensitive, whole word, regex
- ⚡ Fast - Uses ripgrep for blazing-fast search
- 🔄 Undo support - All replacements in one atomic undo
- Neovim >= 0.8
- telescope.nvim
- ripgrep
Using lazy.nvim
{
'your-username/replace.nvim',
dependencies = { 'nvim-telescope/telescope.nvim' },
config = function()
require('replace').setup({
ignore_patterns = { "node_modules", ".git", "*.min.js" },
})
end,
keys = {
{ '<leader>sr', '<cmd>FindReplaceProject<cr>', desc = 'Search & Replace (Project)' },
{ '<leader>sb', '<cmd>FindReplaceBuffer<cr>', desc = 'Search & Replace (Buffer)' },
}
}:FindReplaceProject- Project-wide find & replace:FindReplaceBuffer- Current buffer find & replace
<CR>- Confirm and replace<Tab>- Multi-select matches<C-c>- Toggle case sensitivity<C-w>- Toggle whole word<C-r>- Toggle regex mode
- Run
:FindReplaceProject - Enter search pattern
- Use
<Tab>to select specific matches - Enter replacement text
- Done! ✨
require('replace').setup({
ignore_patterns = { "node_modules", ".git" },
case_sensitive = false,
whole_word = false,
use_regex = false,
mappings = {
toggle_case = "<C-c>",
toggle_word = "<C-w>",
toggle_regex = "<C-r>",
}
})MIT