neovim-flake/modules/plugins/ui/edgy-nvim/config.nix

31 lines
867 B
Nix
Raw Normal View History

2024-09-26 00:05:51 +02:00
{
config,
lib,
...
}: let
inherit (lib.modules) mkIf;
inherit (lib.strings) optionalString;
inherit (lib.nvim.dag) entryBefore;
inherit (lib.nvim.lua) toLuaObject;
cfg = config.vim.ui.edgy-nvim;
in {
config = mkIf cfg.enable {
vim = {
startPlugins = ["edgy-nvim"];
pluginRC.edgy-nvim = entryBefore ["basic"] ''
${optionalString cfg.setRecommendedNeovimOpts ''
-- Neovim options recommended by upstream.
-- Views can only be fully collapsed with the global statusline.
vim.o.laststatus = 3
-- Default splitting will cause your main splits to jump when opening an edgebar.
-- To prevent this, set `splitkeep` to either `screen` or `topline`.
vim.o.splitkeep = "screen"
''}
require('edgy').setup(${toLuaObject cfg.setupOpts})
'';
};
};
}