diff --git a/lua/plugins/advanced-git-search.lua b/lua/plugins/advanced-git-search.lua new file mode 100644 index 0000000..20d1fd3 --- /dev/null +++ b/lua/plugins/advanced-git-search.lua @@ -0,0 +1,67 @@ +return { + 'aaronhallaert/advanced-git-search.nvim', + config = function() + require('telescope').load_extension('advanced_git_search') + vim.api.nvim_create_user_command( + 'DiffCommitLine', + 'lua require("telescope").extensions.advanced_git_search.diff_commit_line()', + { range = true } + ) + end, + dependencies = { + 'nvim-telescope/telescope.nvim', + -- to show diff splits and open commits in browser + 'tpope/vim-fugitive', + }, + keys = { + { + 'hb', + function() + require('telescope').extensions.advanced_git_search.diff_branch_file() + end, + desc = 'Diff file against branch' + }, + { + 'hl', + ':DiffCommitLinegv', + desc = 'Diff current line againt previous commits', + mode = { 'x', 'n' }, + noremap = true + }, + { + 'hf', + function() + require('telescope').extensions.advanced_git_search.diff_commit_file() + end, + desc = 'Diff current file against previous commits' + }, + { + 'hl', + function() + require('telescope').extensions.advanced_git_search.search_log_content() + end, + desc = 'Search git log' + }, + { + 'hs', + function() + require('telescope').extensions.advanced_git_search.search_log_content_file() + end, + desc = 'Search git log that changed current file' + }, + { + 'hr', + function() + require('telescope').extensions.advanced_git_search.checkout_reflog() + end, + desc = 'Search all reflog entries' + }, + { + 'hh', + function() + require('telescope').extensions.advanced_git_search.show_custom_functions() + end, + desc = 'Shwo all git telecope functions' + } + } +} diff --git a/lua/plugins/telescope.lua b/lua/plugins/telescope.lua index f069028..a726449 100644 --- a/lua/plugins/telescope.lua +++ b/lua/plugins/telescope.lua @@ -45,13 +45,6 @@ return { end, desc = 'Find old files', }, - { - 'h', - function() - require('telescope.builtin').command_history() - end, - desc = 'Open command history', - }, { 'b', function()