refactor(nvim): Change snacks/dashboard.nix to also host the extraConfig

This commit is contained in:
demenik
2025-12-17 12:28:31 +01:00
parent a0775faedd
commit 210ce6236c
2 changed files with 78 additions and 75 deletions

View File

@@ -1,7 +1,8 @@
let
{
plugins.snacks.dashboard = let
themes = import ./themes.nix;
theme = themes.dg_baby;
in {
in {
enabled = true;
preset = {
inherit (theme) header;
@@ -50,4 +51,33 @@ in {
align = "center";
}
];
};
extraConfigLua =
# lua
''
local prev = { new_name = "", old_name = "" } -- Prevents duplicate events
vim.api.nvim_create_autocmd("User", {
pattern = "NvimTreeSetup",
callback = function()
local events = require("nvim-tree.api").events
events.subscribe(events.Event.NodeRenamed, function(data)
if prev.new_name ~= data.new_name or prev.old_name ~= data.old_name then
data = data
Snacks.rename.on_rename_file(data.old_name, data.new_name)
end
end)
end,
})
vim.api.nvim_create_autocmd("User", {
pattern = "SnacksDashboardOpened",
callback = function()
if vim.bo.filetype == "snacks_dashboard" then
vim.b.minitrailspace_disable = true
vim.b.miniindentscope_disable = true
end
end,
})
'';
}

View File

@@ -1,4 +1,6 @@
{
imports = [./dashboard.nix];
plugins.snacks = {
enable = true;
settings = {
@@ -11,35 +13,6 @@
image.enabled = true;
quickfile.enabled = true;
rename.enabled = true;
dashboard = import ./dashboard.nix;
};
};
extraConfigLua =
# lua
''
local prev = { new_name = "", old_name = "" } -- Prevents duplicate events
vim.api.nvim_create_autocmd("User", {
pattern = "NvimTreeSetup",
callback = function()
local events = require("nvim-tree.api").events
events.subscribe(events.Event.NodeRenamed, function(data)
if prev.new_name ~= data.new_name or prev.old_name ~= data.old_name then
data = data
Snacks.rename.on_rename_file(data.old_name, data.new_name)
end
end)
end,
})
vim.api.nvim_create_autocmd("User", {
pattern = "SnacksDashboardOpened",
callback = function()
if vim.bo.filetype == "snacks_dashboard" then
vim.b.minitrailspace_disable = true
vim.b.miniindentscope_disable = true
end
end,
})
'';
}