From 636c0562b3d7b8399002d6189ffe5ff2e45890a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=A1clav=20Uruba?= Date: Sun, 3 Sep 2023 17:50:00 +0200 Subject: [PATCH] respect the git root for telescope --- .../nvim/lua/lazy-plugins/telescope.lua | 31 ++++++++++++++++--- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/nvim/.config/nvim/lua/lazy-plugins/telescope.lua b/nvim/.config/nvim/lua/lazy-plugins/telescope.lua index b849bfb..333cf51 100644 --- a/nvim/.config/nvim/lua/lazy-plugins/telescope.lua +++ b/nvim/.config/nvim/lua/lazy-plugins/telescope.lua @@ -1,3 +1,18 @@ +function git_root() + return string.gsub(vim.fn.system("git rev-parse --show-toplevel"), "\n", "") +end + +function get_opts() + local opts = {} + + local root = git_root() + if vim.v.shell_error == 0 then + opts.cwd = root + end + + return opts +end + -- Telescope return { "nvim-telescope/telescope.nvim", @@ -7,19 +22,27 @@ return { keys = { { "fp", - function() require("telescope.builtin").find_files({ cwd = require("lazy.core.config").options.root }) end, + function() + require("telescope.builtin").find_files(get_opts()) + end, }, { "ff", - function() require('telescope.builtin').live_grep() end, + function() + require('telescope.builtin').live_grep(get_opts()) + end, }, { "fb", - function() require('telescope.builtin').buffers() end, + function() + require('telescope.builtin').buffers(get_opts()) + end, }, { "fh", - function() require('telescope.builtin').help_tags() end, + function() + require('telescope.builtin').help_tags(get_opts()) + end, }, }, }