mirror of
https://github.com/LazyVim/LazyVim.git
synced 2025-06-26 18:59:00 +02:00
feat(telescope): use git_files or find_files for files
This commit is contained in:
parent
53c08e7aa1
commit
531f8baf5e
2 changed files with 19 additions and 4 deletions
|
@ -43,10 +43,10 @@ return {
|
||||||
version = false, -- telescope did only one release, so use HEAD for now
|
version = false, -- telescope did only one release, so use HEAD for now
|
||||||
keys = {
|
keys = {
|
||||||
{ "<leader>/", util.telescope("live_grep"), desc = "Find in Files (Grep)" },
|
{ "<leader>/", util.telescope("live_grep"), desc = "Find in Files (Grep)" },
|
||||||
{ "<leader><space>", util.telescope("find_files"), desc = "Find Files (root dir)" },
|
{ "<leader><space>", util.telescope("files"), desc = "Find Files (root dir)" },
|
||||||
{ "<leader>fb", "<cmd>Telescope buffers<cr>", desc = "Buffers" },
|
{ "<leader>fb", "<cmd>Telescope buffers<cr>", desc = "Buffers" },
|
||||||
{ "<leader>ff", util.telescope("find_files"), desc = "Find Files (root dir)" },
|
{ "<leader>ff", util.telescope("files"), desc = "Find Files (root dir)" },
|
||||||
{ "<leader>fF", util.telescope("find_files", { cwd = false }), desc = "Find Files (cwd)" },
|
{ "<leader>fF", util.telescope("files", { cwd = false }), desc = "Find Files (cwd)" },
|
||||||
{ "<leader>fr", "<cmd>Telescope oldfiles<cr>", desc = "Recent" },
|
{ "<leader>fr", "<cmd>Telescope oldfiles<cr>", desc = "Recent" },
|
||||||
{ "<leader>gc", "<cmd>Telescope git_commits<CR>", desc = "commits" },
|
{ "<leader>gc", "<cmd>Telescope git_commits<CR>", desc = "commits" },
|
||||||
{ "<leader>gs", "<cmd>Telescope git_status<CR>", desc = "status" },
|
{ "<leader>gs", "<cmd>Telescope git_status<CR>", desc = "status" },
|
||||||
|
|
|
@ -54,9 +54,24 @@ function M.get_root()
|
||||||
return root
|
return root
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- this will return a function that calls telescope.
|
||||||
|
-- cwd will defautlt to lazyvim.util.get_root
|
||||||
|
-- for `files`, git_files or find_files will be chosen depending on .git
|
||||||
function M.telescope(builtin, opts)
|
function M.telescope(builtin, opts)
|
||||||
|
local params = { builtin = builtin, opts = opts }
|
||||||
return function()
|
return function()
|
||||||
require("telescope.builtin")[builtin](vim.tbl_deep_extend("force", { cwd = M.get_root() }, opts or {}))
|
builtin = params.builtin
|
||||||
|
opts = params.opts
|
||||||
|
opts = vim.tbl_deep_extend("force", { cwd = M.get_root() }, opts or {})
|
||||||
|
if builtin == "files" then
|
||||||
|
if vim.loop.fs_stat((opts.cwd or vim.loop.cwd()) .. "/.git") then
|
||||||
|
opts.show_untracked = true
|
||||||
|
builtin = "git_files"
|
||||||
|
else
|
||||||
|
builtin = "find_files"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
require("telescope.builtin")[builtin](opts)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue