diff --git a/modules/plugins/minimap/codewindow/codewindow.nix b/modules/plugins/minimap/codewindow/codewindow.nix index 381e3102..19b63914 100644 --- a/modules/plugins/minimap/codewindow/codewindow.nix +++ b/modules/plugins/minimap/codewindow/codewindow.nix @@ -1,9 +1,12 @@ {lib, ...}: let - inherit (lib.options) mkEnableOption; + inherit (lib.options) mkEnableOption mkOption; inherit (lib.nvim.binds) mkMappingOption; + inherit (lib.nvim.types) mkPluginSetupOption; + inherit (lib.types) bool str listOf; in { options.vim.minimap.codewindow = { enable = mkEnableOption "codewindow plugin for minimap view"; + openByDefault = mkEnableOption "codewindow plugin opening automatically"; mappings = { open = mkMappingOption "Open minimap [codewindow]" "mo"; @@ -11,5 +14,19 @@ in { toggle = mkMappingOption "Toggle minimap [codewindow]" "mm"; toggleFocus = mkMappingOption "Toggle minimap focus [codewindow]" "mf"; }; + + setupOpts = mkPluginSetupOption "codewindow" { + auto_enable = mkOption { + description = "Open automatically"; + type = bool; + default = true; + }; + + exclude_filetypes = mkOption { + description = "Excluded files types"; + type = listOf str; + default = ["NvimTree" "orgagenda" "Alpha"]; + }; + }; }; } diff --git a/modules/plugins/minimap/codewindow/config.nix b/modules/plugins/minimap/codewindow/config.nix index a853514a..b0542f8d 100644 --- a/modules/plugins/minimap/codewindow/config.nix +++ b/modules/plugins/minimap/codewindow/config.nix @@ -33,9 +33,9 @@ in { pluginRC.codewindow = entryAnywhere '' local codewindow = require('codewindow') - codewindow.setup({ - exclude_filetypes = { 'NvimTree', 'orgagenda', 'Alpha'}, - }) + codewindow.setup( + ${lib.nvim.lua.toLuaObject cfg.setupOpts} + ) ''; }; };