feat(telescope): add a filetype live grep
This commit is contained in:
@@ -47,6 +47,28 @@ return {
|
|||||||
filesize_limit = 0.5, -- MB
|
filesize_limit = 0.5, -- MB
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
local function grepInFiles()
|
||||||
|
local actions = require("telescope.actions")
|
||||||
|
local action_state = require("telescope.actions.state")
|
||||||
|
builtin.filetypes({
|
||||||
|
attach_mappings = function(prompt_bufnr, _)
|
||||||
|
actions.select_default:replace(function()
|
||||||
|
actions.close(prompt_bufnr)
|
||||||
|
local selection = action_state.get_selected_entry()
|
||||||
|
local filetype = selection.value
|
||||||
|
|
||||||
|
builtin.live_grep({
|
||||||
|
additional_args = function()
|
||||||
|
return { "--glob", "*." .. filetype }
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
end)
|
||||||
|
return true
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
end
|
||||||
|
vim.keymap.set("n", "<leader>ft", grepInFiles, { desc = "Live grep by filetype" })
|
||||||
vim.keymap.set('n', '<leader>*', builtin.grep_string, {desc = "Grep current string"})
|
vim.keymap.set('n', '<leader>*', builtin.grep_string, {desc = "Grep current string"})
|
||||||
vim.keymap.set('n', '<leader>ff', builtin.find_files, {desc = "Find files"})
|
vim.keymap.set('n', '<leader>ff', builtin.find_files, {desc = "Find files"})
|
||||||
vim.keymap.set('n', '<leader>fg', builtin.git_branches, {desc = "Find Git branches" })
|
vim.keymap.set('n', '<leader>fg', builtin.git_branches, {desc = "Find Git branches" })
|
||||||
|
|||||||
Reference in New Issue
Block a user