diff --git a/doc/LazyVim.txt b/doc/LazyVim.txt index a88f4539..303c881e 100644 --- a/doc/LazyVim.txt +++ b/doc/LazyVim.txt @@ -1,4 +1,4 @@ -*LazyVim.txt* For Neovim >= 0.9.0 Last change: 2024 March 29 +*LazyVim.txt* For Neovim >= 0.9.0 Last change: 2024 April 11 ============================================================================== Table of Contents *LazyVim-table-of-contents* diff --git a/lua/lazyvim/config/keymaps.lua b/lua/lazyvim/config/keymaps.lua index 49f693c9..38c0ae4e 100644 --- a/lua/lazyvim/config/keymaps.lua +++ b/lua/lazyvim/config/keymaps.lua @@ -127,6 +127,7 @@ map("n", "ub", function() LazyVim.toggle("background", false, {"light", -- lazygit map("n", "gg", function() LazyVim.lazygit( { cwd = LazyVim.root.git() }) end, { desc = "Lazygit (Root Dir)" }) map("n", "gG", function() LazyVim.lazygit() end, { desc = "Lazygit (cwd)" }) +map("n", "gb", LazyVim.lazygit.blame_line, { desc = "Git Blame Line" }) map("n", "gf", function() local git_path = vim.api.nvim_buf_get_name(0) diff --git a/lua/lazyvim/plugins/coding.lua b/lua/lazyvim/plugins/coding.lua index 0823c12e..3cdcc668 100644 --- a/lua/lazyvim/plugins/coding.lua +++ b/lua/lazyvim/plugins/coding.lua @@ -141,7 +141,11 @@ return { { "echasnovski/mini.pairs", event = "VeryLazy", - opts = {}, + opts = { + mappings = { + ["`"] = { action = "closeopen", pair = "``", neigh_pattern = "[^\\`].", register = { cr = false } }, + }, + }, keys = { { "up", diff --git a/lua/lazyvim/util/lazygit.lua b/lua/lazyvim/util/lazygit.lua index 7a7af81e..1b0d3922 100644 --- a/lua/lazyvim/util/lazygit.lua +++ b/lua/lazyvim/util/lazygit.lua @@ -140,4 +140,22 @@ gui: M.dirty = false end +---@param opts? {count?: number}|LazyCmdOptions +function M.blame_line(opts) + opts = vim.tbl_deep_extend("force", { + count = 3, + filetype = "git", + size = { + width = 0.6, + height = 0.6, + }, + border = "rounded", + }, opts or {}) + local cursor = vim.api.nvim_win_get_cursor(0) + local line = cursor[1] - 1 + local file = vim.api.nvim_buf_get_name(0) + local cmd = { "git", "log", "-n", opts.count, "-u", "-L", line .. ",+1:" .. file } + return require("lazy.util").float_cmd(cmd, opts) +end + return M