From 0032c74c6522c7d7c0de26b4d0986dfd18612891 Mon Sep 17 00:00:00 2001 From: David Papp Date: Fri, 19 Jan 2024 20:53:01 +0100 Subject: [PATCH] feat: Add `git-worktree` Changes: - Add [`git-worktree`](https://github.com/ThePrimeagen/git-worktree.nvim) - Set `git-worktree` keymaps for searching & creating branches --- init.lua | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/init.lua b/init.lua index 03f85097..f9b6e8a9 100644 --- a/init.lua +++ b/init.lua @@ -72,6 +72,7 @@ require('lazy').setup({ -- Git related plugins 'tpope/vim-fugitive', 'tpope/vim-rhubarb', + 'ThePrimeagen/git-worktree.nvim', -- Detect tabstop and shiftwidth automatically 'tpope/vim-sleuth', @@ -365,6 +366,9 @@ require('telescope').setup { }, } +require('git-worktree').setup() +require('telescope').load_extension('git_worktree') + -- Enable telescope fzf native, if installed pcall(require('telescope').load_extension, 'fzf') @@ -431,6 +435,8 @@ vim.keymap.set('n', 'sg', require('telescope.builtin').live_grep, { desc vim.keymap.set('n', 'sG', ':LiveGrepGitRoot', { desc = '[S]earch by [G]rep on Git Root' }) vim.keymap.set('n', 'sd', require('telescope.builtin').diagnostics, { desc = '[S]earch [D]iagnostics' }) vim.keymap.set('n', 'sr', require('telescope.builtin').resume, { desc = '[S]earch [R]esume' }) +vim.keymap.set('n', 'sb', "lua require('telescope').extensions.git_worktree.git_worktrees()", { desc = '[S]earch [B]ranches' }) +vim.keymap.set('n', 'sB', "lua require('telescope').extensions.git_worktree.create_git_worktree()", { desc = '[S]earch [B]ranches: Create New' }) -- [[ Configure Treesitter ]] -- See `:help nvim-treesitter`