2023-04-03 09:12:05 +00:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
lib,
|
|
|
|
...
|
2023-11-07 00:50:27 +00:00
|
|
|
}: let
|
2024-03-16 13:25:30 +00:00
|
|
|
inherit (lib.modules) mkIf;
|
|
|
|
inherit (lib.trivial) boolToString;
|
|
|
|
inherit (lib.nvim.dag) entryAnywhere;
|
2023-11-07 00:50:27 +00:00
|
|
|
|
2023-04-03 09:12:05 +00:00
|
|
|
cfg = config.vim.ui.modes-nvim;
|
|
|
|
in {
|
|
|
|
config = mkIf cfg.enable {
|
|
|
|
vim.startPlugins = [
|
|
|
|
"modes-nvim"
|
|
|
|
];
|
|
|
|
|
2024-03-16 13:25:30 +00:00
|
|
|
vim.luaConfigRC.modes-nvim = entryAnywhere ''
|
2023-06-05 22:49:38 +00:00
|
|
|
require('modes').setup({
|
2023-06-05 23:33:18 +00:00
|
|
|
set_cursorline = ${boolToString cfg.setCursorline},
|
2023-06-06 23:36:02 +00:00
|
|
|
line_opacity = {
|
|
|
|
visual = 0,
|
|
|
|
},
|
2023-06-05 23:33:18 +00:00
|
|
|
colors = {
|
|
|
|
copy = "${toString cfg.colors.copy}",
|
|
|
|
delete = "${toString cfg.colors.delete}",
|
|
|
|
insert = "${toString cfg.colors.insert}",
|
|
|
|
visual = "${toString cfg.colors.visual}",
|
|
|
|
},
|
2023-06-05 22:49:38 +00:00
|
|
|
})
|
2023-04-03 09:12:05 +00:00
|
|
|
'';
|
|
|
|
};
|
|
|
|
}
|