Add findroot function for selecting telescope file search base dir
This commit is contained in:
parent
8725cbfe54
commit
80cbab3afb
3 changed files with 79 additions and 20 deletions
3
lua/plugins/luadev.lua
Normal file
3
lua/plugins/luadev.lua
Normal file
|
@ -0,0 +1,3 @@
|
|||
return {
|
||||
"bfredl/nvim-luadev",
|
||||
}
|
|
@ -12,21 +12,28 @@ return {
|
|||
keys = function()
|
||||
local builtin = require("telescope.builtin")
|
||||
local utils = require("telescope.utils")
|
||||
-- stylua: ignore start
|
||||
return {
|
||||
{ ',,', function() builtin.fd { cwd = utils.buffer_dir() } end, desc = "Find files in current file's dir" },
|
||||
{ ',ff', builtin.fd, desc = "Find files" },
|
||||
{ ',fg', builtin.git_files, desc = "Find files (git)" },
|
||||
{ ',gs', builtin.git_status, desc = "Git status" },
|
||||
{ ',s', builtin.lsp_dynamic_workspace_symbols, desc = "Symbols" },
|
||||
{ 'g/', builtin.live_grep, desc = "Live grep" },
|
||||
{ 'g:', builtin.command_history, desc = "Command history" },
|
||||
{ '<C-/>', builtin.current_buffer_fuzzy_find, desc = "Fuzzy find" },
|
||||
{ '<leader>*', builtin.grep_string, desc = "Find at cursor" },
|
||||
{ 'gb', builtin.buffers, desc = "Switch buffer" },
|
||||
{ "<leader>:", builtin.command_history, desc = "Command History" },
|
||||
{ "<leader>;", builtin.commands, desc = "Commands" },
|
||||
{ ',,',
|
||||
function()
|
||||
builtin.fd { cwd = require("findroot")(utils.buffer_dir()) }
|
||||
end,
|
||||
desc = "Find files in base dir (defined by .telescope-root file)"
|
||||
},
|
||||
{ ',ff', builtin.fd, desc = "Find files" },
|
||||
{ ',fg', builtin.git_files, desc = "Find files (git)" },
|
||||
{ ',gs', builtin.git_status, desc = "Git status" },
|
||||
{ ',s', builtin.lsp_dynamic_workspace_symbols, desc = "Symbols" },
|
||||
{ 'g/', builtin.live_grep, desc = "Live grep" },
|
||||
{ 'g:', builtin.command_history, desc = "Command history" },
|
||||
{ '<C-/>', builtin.current_buffer_fuzzy_find, desc = "Fuzzy find" },
|
||||
{ '<leader>*', builtin.grep_string, desc = "Find at cursor" },
|
||||
{ 'gb', builtin.buffers, desc = "Switch buffer" },
|
||||
{ "<leader>:", builtin.command_history, desc = "Command History" },
|
||||
{ "<leader>;", builtin.commands, desc = "Commands" },
|
||||
}
|
||||
end,
|
||||
--stylua: ignore end
|
||||
opts = {
|
||||
defaults = {
|
||||
prompt_prefix = " ",
|
||||
|
@ -34,20 +41,19 @@ return {
|
|||
},
|
||||
extensions = {
|
||||
fzf = {
|
||||
fuzzy = true, -- false will only do exact matching
|
||||
override_generic_sorter = true, -- override the generic sorter
|
||||
override_file_sorter = true, -- override the file sorter
|
||||
case_mode = "smart_case", -- or "ignore_case" or "respect_case"
|
||||
-- the default case_mode is "smart_case"
|
||||
fuzzy = true,
|
||||
override_generic_sorter = true,
|
||||
override_file_sorter = true,
|
||||
case_mode = "smart_case",
|
||||
},
|
||||
["ui-select"] = {
|
||||
require("telescope.themes").get_dropdown {}
|
||||
require("telescope.themes").get_dropdown({}),
|
||||
},
|
||||
},
|
||||
},
|
||||
config = function(_, opts)
|
||||
local telescope = require('telescope')
|
||||
local telescope = require("telescope")
|
||||
telescope.setup(opts)
|
||||
telescope.load_extension('fzf')
|
||||
telescope.load_extension("fzf")
|
||||
end,
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue