Skip to content

Commit

Permalink
plugins: Add ccc (new PR) (nix-community#1365)
Browse files Browse the repository at this point in the history
  • Loading branch information
jukremer authored Apr 2, 2024
1 parent bd1794e commit 7baefc8
Show file tree
Hide file tree
Showing 4 changed files with 85 additions and 0 deletions.
10 changes: 10 additions & 0 deletions lib/maintainers.nix
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,14 @@
{fingerprint = "0821 8B96 DC73 85E5 BB7C A535 D264 3BD2 13BC 0FA8";}
];
};
JanKremer = {
email = "mail@jankremer.eu";
matrix = "@jankremer:matrix.org";
github = "janurskremer";
githubId = 79042825;
name = "Jan Kremer";
keys = [
{fingerprint = "20AF 0A65 9F2B 93AD 9184 15D1 A7DA 689C B3B0 78EC";}
];
};
}
1 change: 1 addition & 0 deletions plugins/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,7 @@
./utils/bacon.nix
./utils/baleia.nix
./utils/better-escape.nix
./utils/ccc.nix
./utils/clipboard-image.nix
./utils/comment.nix
./utils/commentary.nix
Expand Down
54 changes: 54 additions & 0 deletions plugins/utils/ccc.nix
Original file line number Diff line number Diff line change
@@ -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;};
}
20 changes: 20 additions & 0 deletions tests/test-sources/plugins/utils/ccc.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
empty = {
plugins.ccc.enable = true;
};

example = {
plugins.ccc = {
enable = true;
settings = {
default_color = "#FFFFFF";
highlight_mode = "fg";
lsp = true;
highlighter = {
auto_enable = true;
lsp = true;
};
};
};
};
}

0 comments on commit 7baefc8

Please sign in to comment.