This commit is contained in:
Saygo 2025-08-01 07:15:32 +02:00 committed by GitHub
commit d7c68f2a53
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 183 additions and 0 deletions

View file

@ -0,0 +1,38 @@
{ lib, ... }:
lib.nixvim.plugins.mkVimPlugin {
name = "rainbow";
package = "rainbow";
description = "Rainbow parentheses improved shorter code, no level limit, smooth and fast with powerful configuration.";
maintainers = [ lib.maintainers.saygo-png ];
globalPrefix = "rainbow_";
settingsExample = {
active = 1;
conf = {
guifgs = [
"#7d8618"
"darkorange3"
"seagreen3"
"firebrick"
];
operators = "_,_";
parentheses = [
"start=/(/ end=/)/ fold"
"start=/\\[/ end=/\\]/ fold"
];
separately = {
"*" = { };
markdown = {
parentheses_options = "containedin=markdownCode contained";
};
haskell = {
parentheses = [
"start=/\\[/ end=/\\]/ fold"
"start=/\v\{\ze[^-]/ end=/}/ fold"
];
};
css = 0;
};
};
};
}

View file

@ -0,0 +1,145 @@
{
empty = {
plugins.rainbow.enable = true;
};
default = {
plugins.rainbow = {
enable = true;
settings = {
conf = {
guifgs = [
"royalblue3"
"darkorange3"
"seagreen3"
"firebrick"
];
ctermfgs = [
"lightblue"
"lightyellow"
"lightcyan"
"lightmagenta"
];
guis = [ "" ];
cterms = [ "" ];
operators = "_,_";
contains_prefix = "TOP";
parentheses_options = "";
parentheses = [
"start=/(/ end=/)/ fold"
"start=/\\[/ end=/\\]/ fold"
"start=/{/ end=/}/ fold"
];
separately = {
markdown = {
parentheses_options = "containedin=markdownCode contained";
};
lisp = {
guifgs = [
"royalblue3"
"darkorange3"
"seagreen3"
"firebrick"
"darkorchid3"
];
};
haskell = {
parentheses = [
"start=/(/ end=/)/ fold"
"start=/\\[/ end=/\\]/ fold"
"start=/\v\{\ze[^-]/ end=/}/ fold"
];
};
tex = {
parentheses_options = "containedin=texDocZone";
parentheses = [
"start=/(/ end=/)/"
"start=/\\[/ end=/\\]/"
];
};
vim = {
parentheses_options = "containedin=vimFuncBody,vimExecute";
parentheses = [
"start=/(/ end=/)/"
"start=/\\[/ end=/\\]/"
"start=/{/ end=/}/ fold"
];
};
perl = {
syn_name_prefix = "perlBlockFoldRainbow";
};
stylus = {
parentheses = [ "start=/{/ end=/}/ fold contains=@colorableGroup" ];
};
css = 0;
sh = 0;
vimwiki = 0;
};
};
};
};
};
example = {
plugins.rainbow = {
enable = true;
settings = {
active = 1;
conf = {
guifgs = [
"#7d8618"
"darkorange3"
"seagreen3"
"firebrick"
];
ctermfgs = [
"lightblue"
"lightyellow"
"lightcyan"
"lightmagenta"
];
guis = [ "" ];
cterms = [ "" ];
operators = "_,_";
parentheses = [
"start=/(/ end=/)/ fold"
"start=/\\[/ end=/\\]/ fold"
"start=/{/ end=/}/ fold"
];
separately = {
"*" = { };
markdown = {
parentheses_options = "containedin=markdownCode contained";
};
lisp = {
guifgs = [
"royalblue3"
"darkorange3"
"seagreen3"
"firebrick"
"darkorchid3"
];
};
haskell = {
parentheses = [
"start=/(/ end=/)/ fold"
"start=/\\[/ end=/\\]/ fold"
"start=/\v\{\ze[^-]/ end=/}/ fold"
];
};
vim = {
parentheses_options = "containedin=vimFuncBody";
};
perl = {
syn_name_prefix = "perlBlockFoldRainbow";
};
stylus = {
parentheses = [ "start=/{/ end=/}/ fold contains=@colorableGroup" ];
};
css = 0;
};
};
};
};
};
}