plugins/deprecation: allow renaming/removing different plugin scopes

This commit is contained in:
Matt Sturgeon 2025-07-15 01:47:18 +01:00
parent cb33b76f41
commit abc17edf07

View file

@ -7,7 +7,7 @@ let
It is recommended to use `rustaceanvim` instead. It is recommended to use `rustaceanvim` instead.
''; '';
}; };
removed = { removed.plugins = {
# Added 2023-08-29 # Added 2023-08-29
treesitter-playground = '' treesitter-playground = ''
The `treesitter-playground` plugin has been deprecated since the functionality is included in Neovim. The `treesitter-playground` plugin has been deprecated since the functionality is included in Neovim.
@ -23,7 +23,7 @@ let
It is recommended to use `plugins.pckr` or `plugins.lazy` instead. It is recommended to use `plugins.pckr` or `plugins.lazy` instead.
''; '';
}; };
renamed = { renamed.plugins = {
# Added 2024-09-17 # Added 2024-09-17
surround = "vim-surround"; surround = "vim-surround";
}; };
@ -46,18 +46,8 @@ in
{ {
imports = imports =
(lib.mapAttrsToList (
name:
lib.mkRemovedOptionModule [
"plugins"
name
]
) removed)
++ (lib.mapAttrsToList (
old: new: lib.mkRenamedOptionModule [ "plugins" old ] [ "plugins" new ]
) renamed)
# TODO: introduced 2025-04-19 # TODO: introduced 2025-04-19
++ [ [
(lib.mkRenamedOptionModule (lib.mkRenamedOptionModule
[ "plugins" "codeium-nvim" "enable" ] [ "plugins" "codeium-nvim" "enable" ]
[ "plugins" "windsurf-nvim" "enable" ] [ "plugins" "windsurf-nvim" "enable" ]
@ -67,6 +57,14 @@ in
[ "plugins" "windsurf-vim" "enable" ] [ "plugins" "windsurf-vim" "enable" ]
) )
] ]
++ lib.foldlAttrs (
acc: scope: removed':
acc ++ lib.mapAttrsToList (name: msg: lib.mkRemovedOptionModule [ scope name ] msg) removed'
) [ ] removed
++ lib.foldlAttrs (
acc: scope: renamed':
acc ++ lib.mapAttrsToList (old: new: lib.mkRenamedOptionModule [ scope old ] [ scope new ]) renamed'
) [ ] renamed
++ builtins.map ( ++ builtins.map (
name: name:
lib.mkRemovedOptionModule [ "plugins" name "iconsPackage" ] '' lib.mkRemovedOptionModule [ "plugins" name "iconsPackage" ] ''