From 4023b25e66222f4657dd68af578cdecbc46dbd33 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Sat, 2 Mar 2024 20:32:09 +0100 Subject: [PATCH] plugins/instant: switch to settings option --- plugins/utils/instant.nix | 86 +++++++++++--------- tests/test-sources/plugins/utils/instant.nix | 26 +++--- 2 files changed, 63 insertions(+), 49 deletions(-) diff --git a/plugins/utils/instant.nix b/plugins/utils/instant.nix index 1c48ecd3..226a4768 100644 --- a/plugins/utils/instant.nix +++ b/plugins/utils/instant.nix @@ -12,75 +12,87 @@ with helpers.vim-plugin; originalName = "instant.nvim"; defaultPackage = pkgs.vimPlugins.instant-nvim; globalPrefix = "instant_"; + + # TODO introduced 2024-03-02: remove 2024-05-02 deprecateExtraConfig = true; + optionsRenamedToSettings = [ + "username" + "onlyCwd" + "cursorHlGroupUser1" + "cursorHlGroupUser2" + "cursorHlGroupUser3" + "cursorHlGroupUser4" + "cursorHlGroupDefault" + "nameHlGroupUser1" + "nameHlGroupUser2" + "nameHlGroupUser3" + "nameHlGroupUser4" + "nameHlGroupDefault" + ]; - options = let - mkStr = global: default: desc: - mkDefaultOpt { - inherit global; - type = types.str; - description = '' - ${desc} + settingsOptions = { + username = helpers.mkNullOrStr '' + Username. + Explicitly set to `null` if you do not want this option to be set. + ''; - Default: ${default} - ''; - }; - in { - username = mkDefaultOpt { - type = types.str; - description = '' - 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. + ''; - 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_hl_group_user1 = helpers.defaultNullOpts.mkStr "Cursor" '' Cursor highlight group for user 1. ''; - cursorHlGroupUser2 = mkStr "cursor_hl_group_user_2" "Cursor" '' + cursor_hl_group_user2 = helpers.defaultNullOpts.mkStr "Cursor" '' Cursor highlight group for user 2. ''; - cursorHlGroupUser3 = mkStr "cursor_hl_group_user_3" "Cursor" '' + cursor_hl_group_user3 = helpers.defaultNullOpts.mkStr "Cursor" '' Cursor highlight group for user 3. ''; - cursorHlGroupUser4 = mkStr "cursor_hl_group_user_4" "Cursor" '' + cursor_hl_group_user4 = helpers.defaultNullOpts.mkStr "Cursor" '' Cursor highlight group for user 4. ''; - cursorHlGroupDefault = mkStr "cursor_hl_group_default" "Cursor" '' + cursor_hl_group_default = helpers.defaultNullOpts.mkStr "Cursor" '' Cursor highlight group for any other userr. ''; - nameHlGroupUser1 = mkStr "name_hl_group_user_1" "CursorLineNr" '' + name_hl_group_user1 = helpers.defaultNullOpts.mkStr "CursorLineNr" '' Virtual text highlight group for user 1. ''; - nameHlGroupUser2 = mkStr "name_hl_group_user_2" "CursorLineNr" '' + name_hl_group_user2 = helpers.defaultNullOpts.mkStr "CursorLineNr" '' Virtual text highlight group for user 2. ''; - nameHlGroupUser3 = mkStr "name_hl_group_user_3" "CursorLineNr" '' + name_hl_group_user3 = helpers.defaultNullOpts.mkStr "CursorLineNr" '' Virtual text highlight group for user 3. ''; - nameHlGroupUser4 = mkStr "name_hl_group_user_4" "CursorLineNr" '' + name_hl_group_user4 = helpers.defaultNullOpts.mkStr "CursorLineNr" '' Virtual text highlight group for user 4. ''; - nameHlGroupDefault = mkStr "name_hl_group_default" "CursorLineNr" '' + 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"; + }; } diff --git a/tests/test-sources/plugins/utils/instant.nix b/tests/test-sources/plugins/utils/instant.nix index 8eda522b..1020ea9c 100644 --- a/tests/test-sources/plugins/utils/instant.nix +++ b/tests/test-sources/plugins/utils/instant.nix @@ -10,18 +10,20 @@ plugins.instant = { enable = true; - username = "Joe"; - onlyCwd = true; - cursorHlGroupUser1 = "Cursor"; - cursorHlGroupUser2 = "Cursor"; - cursorHlGroupUser3 = "Cursor"; - cursorHlGroupUser4 = "Cursor"; - cursorHlGroupDefault = "Cursor"; - nameHlGroupUser1 = "CursorLineNr"; - nameHlGroupUser2 = "CursorLineNr"; - nameHlGroupUser3 = "CursorLineNr"; - nameHlGroupUser4 = "CursorLineNr"; - nameHlGroupDefault = "CursorLineNr"; + settings = { + 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"; + }; }; }; }