dotfiles/home/dot_config/nvim/lua/custom/plugins/snacks.lua

77 lines
1.6 KiB
Lua

return {
{
'folke/snacks.nvim',
priority = 1000,
lazy = false,
opts = {
gitbrowse = {
url_patterns = {
['bitbucket%.org'] = {
branch = '/src/{branch}',
file = '/src/{branch}/{file}#lines-{line_start}:{line_end}',
permalink = '/src/{commit}/{file}#lines-{line_start}:{line_end}',
commit = '/commits/{commit}',
},
},
what = 'permalink',
},
lazygit = { enabled = true },
dim = {
scope = {
siblings = true,
min_size = 10,
max_size = 20,
},
animate = {
enabled = true,
easing = 'outQuad',
duration = {
step = 20,
total = 150,
},
},
},
toggle = { enabled = true },
},
keys = {
{
'<leader>gB',
function()
Snacks.gitbrowse()
end,
desc = '[B]rowse Git URL',
},
{
'<leader>gY',
function()
Snacks.gitbrowse {
open = function(url)
vim.fn.setreg('+', url)
end,
notify = false,
}
end,
desc = '[Y]ank Git URL',
},
{
'<leader>gg',
function()
Snacks.lazygit()
end,
desc = 'Lazy[g]it (Root Dir)',
},
},
init = function()
vim.api.nvim_create_autocmd('User', {
pattern = 'VeryLazy',
callback = function()
Snacks.toggle.dim():map '<leader>td'
Snacks.toggle.zen():map '<leader>tz'
end,
})
end,
},
}
-- vim: ts=2 sts=2 sw=2 et