mirror of
https://github.com/nix-community/nixvim.git
synced 2025-06-21 08:35:43 +02:00
modules/highlights: add highlightOverride
This commit is contained in:
parent
b57fb15344
commit
30bc345dee
2 changed files with 55 additions and 14 deletions
|
@ -9,7 +9,18 @@ with lib; {
|
||||||
highlight = mkOption {
|
highlight = mkOption {
|
||||||
type = types.attrsOf helpers.nixvimTypes.highlight;
|
type = types.attrsOf helpers.nixvimTypes.highlight;
|
||||||
default = {};
|
default = {};
|
||||||
description = "Define highlight groups.";
|
description = "Define new highlight groups";
|
||||||
|
example = ''
|
||||||
|
highlight = {
|
||||||
|
MacchiatoRed.fg = "#ed8796";
|
||||||
|
};
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
highlightOverride = mkOption {
|
||||||
|
type = types.attrsOf helpers.nixvimTypes.highlight;
|
||||||
|
default = {};
|
||||||
|
description = "Define highlight groups to override existing highlight";
|
||||||
example = ''
|
example = ''
|
||||||
highlight = {
|
highlight = {
|
||||||
Comment.fg = "#ff0000";
|
Comment.fg = "#ff0000";
|
||||||
|
@ -31,19 +42,27 @@ with lib; {
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
extraConfigLuaPre =
|
extraConfigLuaPre =
|
||||||
(optionalString (config.highlight != {}) ''
|
(optionalString (config.highlight != {})
|
||||||
-- Highlight groups {{
|
/*
|
||||||
do
|
lua
|
||||||
local highlights = ${helpers.toLuaObject config.highlight}
|
*/
|
||||||
|
''
|
||||||
|
-- Highlight groups {{
|
||||||
|
do
|
||||||
|
local highlights = ${helpers.toLuaObject config.highlight}
|
||||||
|
|
||||||
for k,v in pairs(highlights) do
|
for k,v in pairs(highlights) do
|
||||||
vim.api.nvim_set_hl(0, k, v)
|
vim.api.nvim_set_hl(0, k, v)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
-- }}
|
||||||
-- }}
|
'')
|
||||||
'')
|
+ (optionalString (config.match != {})
|
||||||
+ (optionalString (config.match != {}) ''
|
/*
|
||||||
-- Match groups {{
|
lua
|
||||||
|
*/
|
||||||
|
''
|
||||||
|
-- Match groups {{
|
||||||
do
|
do
|
||||||
local match = ${helpers.toLuaObject config.match}
|
local match = ${helpers.toLuaObject config.match}
|
||||||
|
|
||||||
|
@ -51,7 +70,24 @@ with lib; {
|
||||||
vim.fn.matchadd(k, v)
|
vim.fn.matchadd(k, v)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
-- }}
|
-- }}
|
||||||
'');
|
'');
|
||||||
|
|
||||||
|
extraConfigLuaPost =
|
||||||
|
optionalString (config.highlightOverride != {})
|
||||||
|
/*
|
||||||
|
lua
|
||||||
|
*/
|
||||||
|
''
|
||||||
|
-- Highlight groups {{
|
||||||
|
do
|
||||||
|
local highlights = ${helpers.toLuaObject config.highlightOverride}
|
||||||
|
|
||||||
|
for k,v in pairs(highlights) do
|
||||||
|
vim.api.nvim_set_hl(0, k, v)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
-- }}
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
{
|
{
|
||||||
example = {
|
example = {
|
||||||
options.termguicolors = true;
|
options.termguicolors = true;
|
||||||
|
|
||||||
highlight = {
|
highlight = {
|
||||||
|
MacchiatoRed.fg = "#ed8796";
|
||||||
|
};
|
||||||
|
|
||||||
|
highlightOverride = {
|
||||||
Normal.fg = "#ff0000";
|
Normal.fg = "#ff0000";
|
||||||
|
|
||||||
# With raw
|
# With raw
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue