add snack

This commit is contained in:
Dennis Chan 2025-07-16 18:04:38 +08:00
parent 2776e0b501
commit b6c886310b
7 changed files with 55 additions and 142 deletions

10
lua/plugins/git-blame.lua Normal file
View file

@ -0,0 +1,10 @@
return {
'f-person/git-blame.nvim',
event = 'VeryLazy',
opts = {
enabled = true,
message_template = ' <author> • <date> • <summary> ',
date_format = '%Y-%m-%d %H:%M',
virtual_text_column = 1,
},
}

13
lua/plugins/grug-far.lua Normal file
View file

@ -0,0 +1,13 @@
return {
'MagicDuck/grug-far.nvim',
-- Note (lazy loading): grug-far.lua defers all it's requires so it's lazy by default
-- additional lazy config to defer loading is not really needed...
config = function()
-- optional setup call to override plugin options
-- alternatively you can set options with vim.g.grug_far = { ... }
require('grug-far').setup {
-- options, see Configuration section below
-- there are no required options atm
}
end,
}

1
lua/plugins/init.lua Normal file
View file

@ -0,0 +1 @@
return {}

View file

@ -0,0 +1,9 @@
return {
'refractalize/oil-git-status.nvim',
dependencies = {
'stevearc/oil.nvim',
},
config = true,
}

17
lua/plugins/oil.lua Normal file
View file

@ -0,0 +1,17 @@
return {
'stevearc/oil.nvim',
---@module 'oil'
---@type oil.SetupOpts
opts = {
win_options = {
signcolumn = 'yes:2',
},
default_file_explorer = true,
view_options = {
show_hidden = true,
},
watch_for_changes = true,
},
dependencies = { { 'echasnovski/mini.icons', opts = {} } },
lazy = false,
}

54
lua/plugins/snacks.lua Normal file
View file

@ -0,0 +1,54 @@
return {
'folke/snacks.nvim',
priority = 1000,
lazy = false,
---@type snacks.Config
opts = {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
bigfile = { enabled = true },
dashboard = { enabled = true },
explorer = { enabled = true },
indent = { enabled = true },
input = { enabled = true },
picker = { enabled = true },
notifier = { enabled = true },
quickfile = { enabled = true },
scope = { enabled = true },
scroll = { enabled = true },
statuscolumn = { enabled = true },
words = { enabled = true },
},
keys = {
{
'gd',
function()
Snacks.picker.lsp_definitions()
end,
desc = 'Goto Definition',
},
{
'gD',
function()
Snacks.picker.lsp_declarations()
end,
desc = 'Goto Declaration',
},
{
'gr',
function()
Snacks.picker.lsp_references()
end,
nowait = true,
desc = 'References',
},
{
'gI',
function()
Snacks.picker.lsp_implementations()
end,
desc = 'Goto Implementation',
},
},
}