nix-community.nixvim/plugins/utils/instant.nix

83 lines
2.2 KiB
Nix

{
lib,
pkgs,
...
} @ args:
with lib;
with (import ../helpers.nix {inherit lib;}).vim-plugin;
mkPlugin args {
name = "instant";
description = "instant.nvim";
package = pkgs.vimPlugins.instant-nvim;
globalPrefix = "instant_";
options = let
mkStr = global: default: desc:
mkDefaultOpt {
inherit global;
type = types.str;
description = ''
${desc}
Default: ${default}
'';
};
in {
username = mkDefaultOpt {
type = types.str;
description = ''
Username.
Explicitly set to `null` if you do not want this option to be set.
'';
};
onlyCwd = mkDefaultOpt {
type = types.bool;
description = ''
Choose whether to share files only in the current working directory in session mode.
Default: `true`
'';
};
cursorHlGroupUser1 = mkStr "cursor_hl_group_user_1" "Cursor" ''
Cursor highlight group for user 1.
'';
cursorHlGroupUser2 = mkStr "cursor_hl_group_user_2" "Cursor" ''
Cursor highlight group for user 2.
'';
cursorHlGroupUser3 = mkStr "cursor_hl_group_user_3" "Cursor" ''
Cursor highlight group for user 3.
'';
cursorHlGroupUser4 = mkStr "cursor_hl_group_user_4" "Cursor" ''
Cursor highlight group for user 4.
'';
cursorHlGroupDefault = mkStr "cursor_hl_group_default" "Cursor" ''
Cursor highlight group for any other userr.
'';
nameHlGroupUser1 = mkStr "name_hl_group_user_1" "CursorLineNr" ''
Virtual text highlight group for user 1.
'';
nameHlGroupUser2 = mkStr "name_hl_group_user_2" "CursorLineNr" ''
Virtual text highlight group for user 2.
'';
nameHlGroupUser3 = mkStr "name_hl_group_user_3" "CursorLineNr" ''
Virtual text highlight group for user 3.
'';
nameHlGroupUser4 = mkStr "name_hl_group_user_4" "CursorLineNr" ''
Virtual text highlight group for user 4.
'';
nameHlGroupDefault = mkStr "name_hl_group_default" "CursorLineNr" ''
Virtual text highlight group for any other user.
'';
};
}