From aa635d5cf8c2c963aa3fef992e6540ec28d7febb Mon Sep 17 00:00:00 2001 From: Zoe Roux Date: Sun, 31 Mar 2024 03:19:20 +0200 Subject: [PATCH] Add git blame --- modules/misc/nvim/lazy-lock.json | 33 ++++++++++--------- modules/misc/nvim/lua/plugins/colorscheme.lua | 3 +- modules/misc/nvim/lua/plugins/git.lua | 26 +++++++++++++-- modules/misc/nvim/lua/plugins/telescope.lua | 2 +- 4 files changed, 43 insertions(+), 21 deletions(-) diff --git a/modules/misc/nvim/lazy-lock.json b/modules/misc/nvim/lazy-lock.json index 16e77a2..370c276 100644 --- a/modules/misc/nvim/lazy-lock.json +++ b/modules/misc/nvim/lazy-lock.json @@ -1,54 +1,55 @@ { "LuaSnip": { "branch": "master", "commit": "a7a4b4682c4b3e2ba82b82a4e6e5f5a0e79dec32" }, "ReplaceWithRegister": { "branch": "master", "commit": "832efc23111d19591d495dc72286de2fb0b09345" }, - "SchemaStore.nvim": { "branch": "main", "commit": "290e692d568e55be475f6af4579fea434e20ba0c" }, + "SchemaStore.nvim": { "branch": "main", "commit": "4ce271f0db8b5224b4d69a43a75c13f5b4dcba43" }, "auto-save.nvim": { "branch": "main", "commit": "42fce87ab468efd080c74759b425be430d636d15" }, - "catppuccin": { "branch": "main", "commit": "196f301de06090c40d7f98297675ac38ae7d6675" }, + "blame.nvim": { "branch": "main", "commit": "757af248104b282db67fc7441e28f1fd01dfc404" }, + "catppuccin": { "branch": "main", "commit": "aebe43db9cb26e1c70fc5b2fd4158169c405e720" }, "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, "cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, - "conform.nvim": { "branch": "master", "commit": "bf109f061fc3cd75394b7823923187ae045cbf22" }, + "conform.nvim": { "branch": "master", "commit": "9d5ba06d6ee7418c674f498634617416d15b6239" }, "dressing.nvim": { "branch": "master", "commit": "18e5beb3845f085b6a33c24112b37988f3f93c06" }, "flash.nvim": { "branch": "main", "commit": "48817af25f51c0590653bbc290866e4890fe1cbe" }, "git-conflict.nvim": { "branch": "main", "commit": "4c8e252b87d54d944c1e56bfb477f78b6fdaf661" }, - "gitsigns.nvim": { "branch": "main", "commit": "078041e9d060a386b0c9d3a8c7a7b019a35d3fb0" }, + "gitsigns.nvim": { "branch": "main", "commit": "70584ff9aae8078b64430c574079d79620b8f06d" }, "harpoon": { "branch": "harpoon2", "commit": "a38be6e0dd4c6db66997deab71fc4453ace97f9c" }, "increment-activator": { "branch": "master", "commit": "b49fc24094f93aa29a7592034b97095b709c3528" }, "indent-blankline.nvim": { "branch": "master", "commit": "3d08501caef2329aba5121b753e903904088f7e6" }, - "lazy-lsp.nvim": { "branch": "master", "commit": "c44049bc79cf73431d49a47292bbecd3d4fe4e5f" }, - "lazy.nvim": { "branch": "main", "commit": "08954f723bf2d442ea020551e3acc956f4dc6dc7" }, + "lazy-lsp.nvim": { "branch": "master", "commit": "d341dd528ad6c2199ab20911ed6b56db43af6e3a" }, + "lazy.nvim": { "branch": "main", "commit": "31ddbea7c10b6920c9077b66c97951ca8682d5c8" }, "lsp_signature.nvim": { "branch": "master", "commit": "c6aeb2f1d2538bbdfdaab1664d9d4c3c75aa9db8" }, "lspkind.nvim": { "branch": "master", "commit": "1735dd5a5054c1fb7feaf8e8658dbab925f4f0cf" }, "lualine.nvim": { "branch": "master", "commit": "b5e8bb642138f787a2c1c5aedc2a78cb2cebbd67" }, "mini.align": { "branch": "main", "commit": "f845218c5fea89e49074e48270dc5e1b9511a0f9" }, "mini.comment": { "branch": "main", "commit": "a4b7e46deb9ad2feb8902cc5dbf087eced112ee5" }, "mini.splitjoin": { "branch": "main", "commit": "a6b043b4afb075058a8c49325ff22e07f0e96170" }, - "neodev.nvim": { "branch": "main", "commit": "6a533ed9d3435dcaa456380d833ea04da37ea2ed" }, + "neodev.nvim": { "branch": "main", "commit": "ce9a2e8eaba5649b553529c5498acb43a6c317cd" }, "neodim": { "branch": "master", "commit": "0543414f1205d8937d8e703a73ae1f9948940b14" }, "neogen": { "branch": "main", "commit": "0daffcec249bf42275e322361fe55b89a05ff278" }, - "noice.nvim": { "branch": "main", "commit": "d29b26c329558ee4bb2e7f3cc25078929ef89b2f" }, + "noice.nvim": { "branch": "main", "commit": "0cbe3f88d038320bdbda3c4c5c95f43a13c3aa12" }, "nui.nvim": { "branch": "main", "commit": "cbd2668414331c10039278f558630ed19b93e69b" }, "nvim-cmp": { "branch": "main", "commit": "97dc716fc914c46577a4f254035ebef1aa72558a" }, "nvim-colorizer.lua": { "branch": "master", "commit": "85855b38011114929f4058efc97af1059ab3e41d" }, "nvim-lint": { "branch": "master", "commit": "2669aabb8362fdc36aced5ba864b7135636ea863" }, - "nvim-lspconfig": { "branch": "master", "commit": "6e5c78ebc9936ca74add66bda22c566f951b6ee5" }, + "nvim-lspconfig": { "branch": "master", "commit": "f4619ab31fc4676001ea05ae8200846e6e7700c7" }, "nvim-navic": { "branch": "master", "commit": "8649f694d3e76ee10c19255dece6411c29206a54" }, "nvim-pqf": { "branch": "main", "commit": "ba0e291cb5c0249838132e197dac082777bdc7d6" }, "nvim-scrollbar": { "branch": "main", "commit": "35f99d559041c7c0eff3a41f9093581ceea534e8" }, "nvim-surround": { "branch": "main", "commit": "d47001f8ddf9646c24f16d2732d4d0255acd2121" }, - "nvim-treesitter": { "branch": "master", "commit": "965f2e7239ab5e1c5f133d498591f1e70746410c" }, + "nvim-treesitter": { "branch": "master", "commit": "6e0b031ebb212e7082bc3007f8b9614cb393465c" }, "nvim-treesitter-textobjects": { "branch": "master", "commit": "d2a4ffc22d9d38d44edb73da007b3cf43451e9b4" }, - "nvim-ts-context-commentstring": { "branch": "main", "commit": "7ab799a9792f7cf3883cf28c6a00ad431f3d382a" }, + "nvim-ts-context-commentstring": { "branch": "main", "commit": "734ebad31c81c6198dfe102aa23280937c937c42" }, "nvim-type-fmt": { "branch": "main", "commit": "59ce3d837de63633801ba0b28ed88164e14d6b87" }, - "nvim-web-devicons": { "branch": "master", "commit": "6662f059bf78e6092ba90cd1929599625f448f55" }, + "nvim-web-devicons": { "branch": "master", "commit": "3ee60deaa539360518eaab93a6c701fe9f4d82ef" }, "oil.nvim": { "branch": "master", "commit": "e462a3446505185adf063566f5007771b69027a1" }, - "omnisharp-extended-lsp.nvim": { "branch": "main", "commit": "f7310a06ad86072158adc37f394650e7fba9631d" }, + "omnisharp-extended-lsp.nvim": { "branch": "main", "commit": "d55fba19777f7c437215253cad99f18a8f06edd2" }, "plenary.nvim": { "branch": "master", "commit": "8aad4396840be7fc42896e3011751b7609ca4119" }, "statuscol.nvim": { "branch": "0.10", "commit": "e9e4c30b68abe456d80a0b144149ebf3f4527ed8" }, "telescope-fzf-native.nvim": { "branch": "feature/69-prebuilt-release-binaries", "commit": "af1d3c6efa0124123272bba094a60e15682c9cd5" }, - "telescope.nvim": { "branch": "master", "commit": "c2b8311dfacd08b3056b8f0249025d633a4e71a8" }, - "todo-comments.nvim": { "branch": "main", "commit": "833d8dd8b07eeda37a09e99460f72a02616935cb" }, - "trouble.nvim": { "branch": "main", "commit": "f1168feada93c0154ede4d1fe9183bf69bac54ea" }, + "telescope.nvim": { "branch": "master", "commit": "1bb28df3cfc241b961331f00dcb8d5b45fe3e4f0" }, + "todo-comments.nvim": { "branch": "main", "commit": "a7e39ae9e74f2c8c6dc4eea6d40c3971ae84752d" }, + "trouble.nvim": { "branch": "main", "commit": "b9cf677f20bb2faa2dacfa870b084e568dca9572" }, "undotree": { "branch": "master", "commit": "aa93a7e5890dbbebbc064cd22260721a6db1a196" }, "vim-helm": { "branch": "master", "commit": "86cc6766db60b8cc5731068d0c2111dee1f2b328" }, "vim-illuminate": { "branch": "master", "commit": "305bf07b919ac526deb5193280379e2f8b599926" }, diff --git a/modules/misc/nvim/lua/plugins/colorscheme.lua b/modules/misc/nvim/lua/plugins/colorscheme.lua index 49568c6..53c06ab 100644 --- a/modules/misc/nvim/lua/plugins/colorscheme.lua +++ b/modules/misc/nvim/lua/plugins/colorscheme.lua @@ -30,7 +30,8 @@ return { }, custom_highlights = function (colors) return { - FlashLabel = { fg = colors.red } + FlashLabel = { fg = colors.red }, + NotCommitedBlame = { fg = "DimGray" }, } end }, diff --git a/modules/misc/nvim/lua/plugins/git.lua b/modules/misc/nvim/lua/plugins/git.lua index 7088721..77468f8 100644 --- a/modules/misc/nvim/lua/plugins/git.lua +++ b/modules/misc/nvim/lua/plugins/git.lua @@ -22,7 +22,6 @@ return { map({ "n", "v" }, "gr", ":Gitsigns reset_hunk", "Reset Hunk") map("n", "gu", gs.undo_stage_hunk, "Unstage Hunk") map("n", "gA", gs.stage_buffer, "Add buffer") - map("n", "gB", gs.blame_line, "Blame") map("n", "gR", gs.reset_buffer, "Reset Buffer") map("n", "gp", gs.preview_hunk, "Preview Hunk") map("n", "gd", gs.diffthis, "Diff This") @@ -46,8 +45,29 @@ return { opts = { default_mappings = false, }, - init = function () + init = function() vim.keymap.del("n", "gx") end - } + }, + + { + -- "FabijanZulj/blame.nvim", + "zoriya/blame.nvim", + -- dev = true, + keys = { + { "gb", "ToggleBlame window", desc = "Git blame" }, + }, + cmd = "ToggleBlame", + opts = { + date_format = "%Y/%m/%d", + width = 50, + commit_detail_view = "current", + format = function(blame) + if string.sub(blame.hash, 0, 8) == "00000000" then + return "Not Committed Yet" + end + return string.format("%s %s %s", blame.author, blame.date, blame.summary) + end, + }, + }, } diff --git a/modules/misc/nvim/lua/plugins/telescope.lua b/modules/misc/nvim/lua/plugins/telescope.lua index f29a7bb..3bfa17d 100644 --- a/modules/misc/nvim/lua/plugins/telescope.lua +++ b/modules/misc/nvim/lua/plugins/telescope.lua @@ -18,7 +18,7 @@ return { { "F", "Telescope live_grep theme=ivy", desc = "Grep" }, { "gl", "Telescope git_commits", desc = "Git log" }, { "gh", "Telescope git_bcommits", desc = "Git history" }, - { "gb", "Telescope git_branches", desc = "Git branches" }, + { "gB", "Telescope git_branches", desc = "Git branches" }, { "gs", "Telescope git_status", desc = "Git status" }, { "gc", "Telescope git_show", desc = "Show last commit" }, },