nix-community.nixvim/plugins/by-name/instant/default.nix
osbm a41559f093
Some checks are pending
Publish every Git push to main to FlakeHub / flakehub-publish (push) Waiting to run
Publish every git push to Flakestry / publish-flake (push) Waiting to run
Documentation / Version info (push) Waiting to run
Documentation / Build (push) Blocked by required conditions
Documentation / Combine builds (push) Blocked by required conditions
Documentation / Deploy (push) Blocked by required conditions
treewide: add plugin descriptions
2025-06-24 06:10:11 +00:00

99 lines
2.7 KiB
Nix

{
lib,
helpers,
...
}:
with lib;
with lib.nixvim.plugins;
mkVimPlugin {
name = "instant";
packPathName = "instant.nvim";
package = "instant-nvim";
globalPrefix = "instant_";
description = "A Neovim plugin for collaborative editing.";
maintainers = [ maintainers.GaetanLepage ];
# TODO introduced 2024-03-02: remove 2024-05-02
deprecateExtraConfig = true;
optionsRenamedToSettings = [
"username"
"onlyCwd"
"cursorHlGroupUser1"
"cursorHlGroupUser2"
"cursorHlGroupUser3"
"cursorHlGroupUser4"
"cursorHlGroupDefault"
"nameHlGroupUser1"
"nameHlGroupUser2"
"nameHlGroupUser3"
"nameHlGroupUser4"
"nameHlGroupDefault"
];
settingsOptions = {
username = helpers.mkNullOrStr ''
Username.
Explicitly set to `null` if you do not want this option to be set.
'';
only_cwd = helpers.defaultNullOpts.mkBool true ''
Choose whether to share files only in the current working directory in session mode.
'';
cursor_hl_group_user1 = helpers.defaultNullOpts.mkStr "Cursor" ''
Cursor highlight group for user 1.
'';
cursor_hl_group_user2 = helpers.defaultNullOpts.mkStr "Cursor" ''
Cursor highlight group for user 2.
'';
cursor_hl_group_user3 = helpers.defaultNullOpts.mkStr "Cursor" ''
Cursor highlight group for user 3.
'';
cursor_hl_group_user4 = helpers.defaultNullOpts.mkStr "Cursor" ''
Cursor highlight group for user 4.
'';
cursor_hl_group_default = helpers.defaultNullOpts.mkStr "Cursor" ''
Cursor highlight group for any other userr.
'';
name_hl_group_user1 = helpers.defaultNullOpts.mkStr "CursorLineNr" ''
Virtual text highlight group for user 1.
'';
name_hl_group_user2 = helpers.defaultNullOpts.mkStr "CursorLineNr" ''
Virtual text highlight group for user 2.
'';
name_hl_group_user3 = helpers.defaultNullOpts.mkStr "CursorLineNr" ''
Virtual text highlight group for user 3.
'';
name_hl_group_user4 = helpers.defaultNullOpts.mkStr "CursorLineNr" ''
Virtual text highlight group for user 4.
'';
name_hl_group_default = helpers.defaultNullOpts.mkStr "CursorLineNr" ''
Virtual text highlight group for any other user.
'';
};
settingsExample = {
username = "Joe";
onlyCwd = true;
cursor_hl_group_user1 = "Cursor";
cursor_hl_group_user2 = "Cursor";
cursor_hl_group_user3 = "Cursor";
cursor_hl_group_user4 = "Cursor";
cursor_hl_group_default = "Cursor";
name_hl_group_user1 = "CursorLineNr";
name_hl_group_user2 = "CursorLineNr";
name_hl_group_user3 = "CursorLineNr";
name_hl_group_user4 = "CursorLineNr";
name_hl_group_default = "CursorLineNr";
};
}