From 5ae23bff4e1917a40c31ce8c9a6a7e812ada100b Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Tue, 30 Dec 2025 12:23:21 +0100 Subject: [PATCH] plugins/codesettings: init --- plugins/by-name/codesettings/default.nix | 23 +++++++++ .../plugins/by-name/codesettings/default.nix | 48 +++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 plugins/by-name/codesettings/default.nix create mode 100644 tests/test-sources/plugins/by-name/codesettings/default.nix diff --git a/plugins/by-name/codesettings/default.nix b/plugins/by-name/codesettings/default.nix new file mode 100644 index 00000000..c1f69b16 --- /dev/null +++ b/plugins/by-name/codesettings/default.nix @@ -0,0 +1,23 @@ +{ lib, ... }: +lib.nixvim.plugins.mkNeovimPlugin { + name = "codesettings"; + package = "codesettings-nvim"; + + maintainers = [ lib.maintainers.GaetanLepage ]; + + settingsExample = { + config_file_paths = [ + ".vscode/settings.json" + "codesettings.json" + "lspsettings.json" + ".codesettings.json" + ".lspsettings.json" + ".nvim/codesettings.json" + ".nvim/lspsettings.json" + ]; + jsonls_integration = true; + default_merge_opts = { + list_behavior = "prepend"; + }; + }; +} diff --git a/tests/test-sources/plugins/by-name/codesettings/default.nix b/tests/test-sources/plugins/by-name/codesettings/default.nix new file mode 100644 index 00000000..82baff26 --- /dev/null +++ b/tests/test-sources/plugins/by-name/codesettings/default.nix @@ -0,0 +1,48 @@ +{ + empty = { + plugins.codesettings.enable = true; + }; + + defaults = { + plugins.codesettings = { + enable = true; + + settings = { + config_file_paths = [ + ".vscode/settings.json" + "codesettings.json" + "lspsettings.json" + ]; + jsonc_filetype = true; + jsonls_integration = true; + live_reload = false; + loader_extensions = [ ]; + lua_ls_integration = true; + merge_lists = "append"; + root_dir.__raw = "nil"; + }; + }; + }; + + example = { + plugins.codesettings = { + enable = true; + + settings = { + config_file_paths = [ + ".vscode/settings.json" + "codesettings.json" + "lspsettings.json" + ".codesettings.json" + ".lspsettings.json" + ".nvim/codesettings.json" + ".nvim/lspsettings.json" + ]; + jsonls_integration = true; + default_merge_opts = { + list_behavior = "prepend"; + }; + }; + }; + }; +}