nvim/lua/plugins/snacks.lua
2026-02-09 15:26:44 +01:00

75 lines
1.7 KiB
Lua

local header_string = [[
__ __ ____ _____ _____
\ \ /"/u / __"| u |_ " _| |"_ /u
\ \ / // <\___ \/ | | U / //
/\ V /_,-.u___) | /| |\ \/ /_
U \_/-(_/ |____/>> u |_|U /____|
// )( (__)_// \\_ _//<<,-
(__) (__) (__) (__)(__) (_/ ]]
return {
"folke/snacks.nvim",
priority = 1000,
lazy = false,
opts = {
dashboard = {
enabled = true,
preset = {
header = header_string,
},
sections = {
{ section = "header" },
{ section = "keys", gap = 1, padding = 1 },
{ pane = 2, icon = "", title = "Recent Files", section = "recent_files", indent = 2, padding = 1 },
{ pane = 2, icon = "", title = "Projects", section = "projects", indent = 2, padding = 1 },
{
pane = 2,
icon = "",
title = "Git Status",
section = "terminal",
enabled = function()
return Snacks.git.get_root() ~= nil
end,
cmd = "git status --short --branch --renames",
height = 5,
padding = 1,
ttl = 5 * 60,
indent = 3,
},
{ section = "startup" },
},
},
explorer = { enabled = false },
input = { enabled = true },
notifier = {
enabled = true,
timeout = 10000,
},
lazygit = {
enabled = true,
},
},
keys = {
{
"<leader>n",
function()
Snacks.picker.notifications()
end,
desc = "Notification History",
},
{
"<leader>od",
function()
Snacks.dashboard()
end,
desc = "Dashboard",
},
{
"<leader>gg",
function()
Snacks.lazygit()
end,
desc = "Lazygit",
},
},
}