plugins: Add ccc (new PR) (#1365)

This commit is contained in:
Jan Kremer 2024-04-02 13:24:07 +02:00 committed by GitHub
parent bd1794e89d
commit 7baefc8aa5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 85 additions and 0 deletions

54
plugins/utils/ccc.nix Normal file
View file

@ -0,0 +1,54 @@
{
lib,
helpers,
config,
pkgs,
...
}:
helpers.neovim-plugin.mkNeovimPlugin config {
name = "ccc";
originalName = "ccc.nvim";
defaultPackage = pkgs.vimPlugins.ccc-nvim;
maintainers = [helpers.maintainers.JanKremer];
settingsOptions = {
default_color = helpers.defaultNullOpts.mkStr "#000000" ''
The default color used when a color cannot be picked. It must be HEX format.
'';
highlight_mode = helpers.defaultNullOpts.mkEnum ["fg" "bg" "foreground" "background"] "bg" ''
Option to highlight text foreground or background. It is used to
`output_line` and `highlighter`.
'';
lsp = helpers.defaultNullOpts.mkBool true ''
Whether to enable LSP support. The color information is updated in the
background and the result is used by `:CccPick` and highlighter.
'';
highlighter = {
auto_enable = helpers.defaultNullOpts.mkBool false ''
Whether to enable automatically on `BufEnter`.
'';
lsp = helpers.defaultNullOpts.mkBool true ''
If true, highlight using LSP. If a language server with the color
provider is not attached to a buffer, it falls back to highlight with
pickers. See also `:help ccc-option-lsp`.
'';
};
};
settingsExample = {
default_color = "#FFFFFF";
highlight_mode = "fg";
lsp = false;
highlighter = {
auto_enable = true;
lsp = false;
};
};
extraConfig = cfg: {opts.termguicolors = lib.mkDefault true;};
}