diff --git a/plugins/default.nix b/plugins/default.nix index 3322e19b..43afa312 100644 --- a/plugins/default.nix +++ b/plugins/default.nix @@ -112,6 +112,7 @@ ./utils/auto-session.nix ./utils/autoclose.nix ./utils/bacon.nix + ./utils/baleia.nix ./utils/better-escape.nix ./utils/clipboard-image.nix ./utils/comment-nvim.nix diff --git a/plugins/utils/baleia.nix b/plugins/utils/baleia.nix new file mode 100644 index 00000000..55b72b94 --- /dev/null +++ b/plugins/utils/baleia.nix @@ -0,0 +1,48 @@ +{ + helpers, + pkgs, + config, + ... +}: +helpers.neovim-plugin.mkNeovimPlugin config { + name = "baleia"; + originalName = "baleia.nvim"; + defaultPackage = pkgs.vimPlugins.baleia-nvim; + + maintainers = [helpers.maintainers.alisonjenkins]; + + settingsOptions = { + async = helpers.defaultNullOpts.mkBool true '' + Highlight asynchronously. + ''; + + colors = helpers.defaultNullOpts.mkStr "NR_8" '' + Table mapping 256 color codes to vim colors. + ''; + + line_starts_at = helpers.defaultNullOpts.mkInt 1 '' + At which column start colorizing. + ''; + + log = helpers.defaultNullOpts.mkEnum ["ERROR" "WARN" "INFO" "DEBUG"] "INFO" '' + Log level, possible values are ERROR, WARN, INFO or DEBUG. + ''; + + name = helpers.defaultNullOpts.mkStr "BaleiaColors" '' + Prefix used to name highlight groups. + ''; + + strip_ansi_codes = helpers.defaultNullOpts.mkBool true '' + Remove ANSI color codes from text. + ''; + }; + + settingsExample = { + async = true; + colors = "NR_8"; + line_starts_at = 1; + log = "INFO"; + name = "BaleiaColors"; + strip_ansi_codes = true; + }; +} diff --git a/tests/test-sources/plugins/utils/baleia.nix b/tests/test-sources/plugins/utils/baleia.nix new file mode 100644 index 00000000..acdb4c5a --- /dev/null +++ b/tests/test-sources/plugins/utils/baleia.nix @@ -0,0 +1,20 @@ +{ + empty = { + plugins.baleia.enable = true; + }; + + example = { + plugins.baleia = { + enable = true; + + settings = { + async = true; + colors = "NR_8"; + line_starts_at = 1; + log = "INFO"; + name = "BaleiaColors"; + strip_ansi_codes = false; + }; + }; + }; +}