From d62edf4178bf4dac277b5ce5189d9737e97efe5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=A9tan=20Lepage?= <33058747+GaetanLepage@users.noreply.github.com> Date: Fri, 31 Mar 2023 23:12:48 +0200 Subject: [PATCH] tokyonight: Add onColor and onHightlights (#309) Co-authored-by: Carl Dong --- plugins/colorschemes/tokyonight.nix | 21 +++++++++++++++++++ .../plugins/colorschemes/tokyonight.nix | 6 ++---- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/plugins/colorschemes/tokyonight.nix b/plugins/colorschemes/tokyonight.nix index f061878e..b80eac3f 100644 --- a/plugins/colorschemes/tokyonight.nix +++ b/plugins/colorschemes/tokyonight.nix @@ -50,6 +50,21 @@ in { lualineBold = helpers.defaultNullOpts.mkBool false "When true, section headers in the lualine theme will be bold"; + onColors = + helpers.defaultNullOpts.mkStr "function(colors) end" + '' + Override specific color groups to use other groups or a hex color. + function will be called with a ColorScheme table. + `@param colors ColorScheme` + ''; + onHighlights = + helpers.defaultNullOpts.mkStr "function(highlights, colors) end" + '' + Override specific highlights to use other groups or a hex color. + function will be called with a Highlights and ColorScheme table + `@param highlights Highlights` + `@param colors ColorScheme` + ''; }; }; config = mkIf cfg.enable { @@ -64,6 +79,12 @@ in { dim_inactive = dimInactive; lualine_bold = lualineBold; day_brightness = dayBrightness; + on_colors = + helpers.ifNonNull' cfg.onColors + (helpers.mkRaw onColors); + on_highlights = + helpers.ifNonNull' cfg.onHighlights + (helpers.mkRaw onHighlights); }; in '' require("tokyonight").setup(${helpers.toLuaObject setupOptions}) diff --git a/tests/test-sources/plugins/colorschemes/tokyonight.nix b/tests/test-sources/plugins/colorschemes/tokyonight.nix index dec1fdea..fb4dd896 100644 --- a/tests/test-sources/plugins/colorschemes/tokyonight.nix +++ b/tests/test-sources/plugins/colorschemes/tokyonight.nix @@ -27,10 +27,8 @@ hideInactiveStatusline = false; dimInactive = false; lualineBold = false; - # Not implemented - # onColors = {__raw = "function(colors) end";}; - # Not implemented - # onHighlights = {__raw = "function(colors) end";}; + onColors = "function(colors) end"; + onHighlights = "function(highlights, colors) end"; }; }; }