diff options
author | Toby Vincent <tobyv13@gmail.com> | 2022-07-13 15:44:58 -0500 |
---|---|---|
committer | Toby Vincent <tobyv13@gmail.com> | 2022-07-13 15:44:58 -0500 |
commit | 26da8d7769bb12ffc4ec98e58b74765cf18f414e (patch) | |
tree | 82800fed987938bfcb0781ef9d0288a340a7becb /nvim | |
parent | 668cd04bcd7aced2782a9027f5eb10a26867ddb3 (diff) |
feat(nvim): add keymaps for file, selection, and workspace git history
Diffstat (limited to 'nvim')
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/diffview.lua | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/diffview.lua b/nvim/.config/nvim/lua/tobyvin/plugins/diffview.lua index b822848..4f1e720 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/diffview.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/diffview.lua @@ -1,6 +1,20 @@ local utils = require("tobyvin.utils") local M = {} +M.file_history = function() + require("diffview").file_history(nil, vim.fn.bufname()) +end + +M.workspace_history = function() + require("diffview").file_history() +end + +M.selection_history = function() + local first = vim.api.nvim_buf_get_mark(0, "<")[1] + local last = vim.api.nvim_buf_get_mark(0, ">")[1] + require("diffview").file_history({ first, last }) +end + M.setup = function() local status_ok, diffview = pcall(require, "diffview") if not status_ok then @@ -12,6 +26,11 @@ M.setup = function() local nmap = utils.create_map_group("n", "<leader>g", { name = "Git" }) nmap("d", diffview.open, { desc = "Diffview" }) + nmap("h", M.file_history, { desc = "File History" }) + nmap("H", M.workspace_history, { desc = "Workspace History" }) + + local vmap = utils.create_map_group("v", "<leader>g", { name = "Git" }) + vmap("h", M.selection_history, { desc = "Selection History" }) end return M |