{ nixos ? false, nixOnDroid ? false, homeManager ? false }: { pkgs, lib, config, ... }: with lib; let cfg = config.programs.nixvim; pluginWithConfigType = types.submodule { options = { config = mkOption { type = types.lines; description = "vimscript for this plugin to be placed in init.vim"; default = ""; }; optional = mkEnableOption "optional" // { description = "Don't load by default (load with :packadd)"; }; plugin = mkOption { type = types.package; description = "vim plugin"; }; }; }; mapOption = types.oneOf [ types.str (types.submodule { options = { silent = mkOption { type = types.bool; description = "Whether this mapping should be silent. Equivalent to adding to a map."; default = false; }; nowait = mkOption { type = types.bool; description = "Whether to wait for extra input on ambiguous mappings. Equivalent to adding to a map."; default = false; }; script = mkOption { type = types.bool; description = "Equivalent to adding