feat(nvim): added search-replace on current buffer extra

now spectre is for global replace and search-replace is for buffer replace
This commit is contained in:
Sergio Laín 2023-11-21 10:49:13 +01:00
parent 910e95e764
commit a0ec8ade12
No known key found for this signature in database
GPG key ID: 14C9B8080681777B
3 changed files with 28 additions and 39 deletions

View file

@ -46,6 +46,7 @@
"plugins.extras.editor.rayso", "plugins.extras.editor.rayso",
"plugins.extras.editor.regex", "plugins.extras.editor.regex",
"plugins.extras.editor.rest-client", "plugins.extras.editor.rest-client",
"plugins.extras.editor.search-replace",
"plugins.extras.editor.smart-splits", "plugins.extras.editor.smart-splits",
"plugins.extras.editor.suda", "plugins.extras.editor.suda",
"plugins.extras.editor.telescope.repo", "plugins.extras.editor.telescope.repo",

View file

@ -0,0 +1,23 @@
return {
"roobert/search-replace.nvim",
opts = {
default_replace_single_buffer_options = "gcI",
default_replace_multi_buffer_options = "egcI",
},
-- stylua: ignore
keys = {
{ "<C-r>", "<CMD>SearchReplaceSingleBufferVisualSelection<CR>", desc = "Search and Replace in Visual Selection", mode = "v" },
{ "<C-s>", "<CMD>SearchReplaceWithinVisualSelection<CR>", desc = "Search and Replace Within Visual Selection", mode = "v" },
{ "<C-b>", "<CMD>SearchReplaceWithinVisualSelectionCWord<CR>", desc = "Search and Replace Within Visual Selection (Current Word)", mode = "v" },
{ "<leader>srw", "<CMD>SearchReplaceSingleBufferSelections<CR>", desc = "Word on Buffer", mode = "n" },
{ "<leader>srb", "<CMD>SearchReplaceSingleBufferOpen<CR>", desc = "Buffer", mode = "n" },
-- { "n", "<leader>rbs", "<CMD>SearchReplaceMultiBufferSelections<CR>", desc = "Search and Replace in Multi Buffer Selections" },
-- { "n", "<leader>rbo", "<CMD>SearchReplaceMultiBufferOpen<CR>", desc = "Search and Replace in Multi Buffer, Open" },
-- { "n", "<leader>rbw", "<CMD>SearchReplaceMultiBufferCWord<CR>", desc = "Search and Replace in Multi Buffer (Current Word)" },
-- { "n", "<leader>rbW", "<CMD>SearchReplaceMultiBufferCWORD<CR>", desc = "Search and Replace in Multi Buffer (Current WORD)" },
-- { "n", "<leader>rbe", "<CMD>SearchReplaceMultiBufferCExpr<CR>", desc = "Search and Replace in Multi Buffer (Current Expression)" },
-- { "n", "<leader>rbf", "<CMD>SearchReplaceMultiBufferCFile<CR>", desc = "Search and Replace in Multi Buffer (Current File)" },
},
}

View file

@ -3,46 +3,11 @@ return {
"nvim-pack/nvim-spectre", "nvim-pack/nvim-spectre",
cmd = "Spectre", cmd = "Spectre",
opts = {}, opts = {},
-- stylua: ignore
keys = { keys = {
{ { "<leader>srg", function() require("spectre").toggle() end, desc = "Globally" },
"<leader>srf", { "<leader>srW", mode = { "n" }, function() require("spectre").open_visual({ select_word = true }) end, desc = "Word Globally" },
function() { "<leader>srW", mode = { "v" }, function() require("spectre").open_visual() end, desc = "Word Globally" },
require("spectre").toggle()
end,
desc = "Search globally",
},
{
"<leader>srw",
mode = { "n" },
function()
require("spectre").open_visual({ select_word = true })
end,
desc = "Current Word",
},
{
"<leader>srw",
mode = { "v" },
function()
require("spectre").open_visual()
end,
desc = "Current Word",
},
{
"<leader>srW",
mode = { "n" },
function()
require("spectre").open_file_search({ select_word = true })
end,
desc = "Word on Current File",
},
{
"<leader>src",
mode = { "n" },
function()
require("spectre").open_file_search({})
end,
desc = "Current File",
},
}, },
}, },
{ {