{ lib, config, ... }: let cfg = config.presets.base.tree; in { options.presets.base.tree = { enable = lib.mkEnableOption "file tree"; }; config = lib.mkIf cfg.enable { keymaps = [ { key = "ft"; action = ":Neotree toggle"; } ]; plugins = { neo-tree = { enable = true; filesystem.filteredItems.visible = true; eventHandlers = { file_opened = '' function() require('neo-tree').close_all() end ''; }; }; which-key.registrations."f".t = "Tree"; }; }; }