diff --git a/plugins/by-name/claude-code/default.nix b/plugins/by-name/claude-code/default.nix new file mode 100644 index 00000000..7a0537bb --- /dev/null +++ b/plugins/by-name/claude-code/default.nix @@ -0,0 +1,17 @@ +{ lib, ... }: +lib.nixvim.plugins.mkNeovimPlugin { + name = "claude-code"; + packPathName = "claude-code.nvim"; + package = "claude-code-nvim"; + + maintainers = [ lib.maintainers.khaneliman ]; + + settingsExample = { + window = { + split_ratio = 0.4; + position = "vertical"; + hide_numbers = false; + hide_signcolumn = false; + }; + }; +} diff --git a/tests/test-sources/plugins/by-name/claude-code/default.nix b/tests/test-sources/plugins/by-name/claude-code/default.nix new file mode 100644 index 00000000..55a14cad --- /dev/null +++ b/tests/test-sources/plugins/by-name/claude-code/default.nix @@ -0,0 +1,47 @@ +{ + empty = { + plugins.claude-code.enable = true; + }; + + defaults = { + plugins.claude-code = { + enable = true; + settings = { + window = { + split_ratio = 0.3; + position = "botright"; + enter_insert = true; + hide_numbers = true; + hide_signcolumn = true; + }; + refresh = { + enable = true; + updatetime = 100; + timer_interval = 1000; + show_notifications = true; + }; + git = { + use_git_root = true; + }; + command = "claude"; + command_variants = { + continue = "--continue"; + resume = "--resume"; + verbose = "--verbose"; + }; + keymaps = { + toggle = { + normal = ""; + terminal = ""; + variants = { + continue = "cC"; + verbose = "cV"; + }; + }; + window_navigation = true; + scrolling = true; + }; + }; + }; + }; +}