diff --git a/lua/catppuccin/config.lua b/lua/catppuccin/config.lua index 3ae05e9..3725073 100644 --- a/lua/catppuccin/config.lua +++ b/lua/catppuccin/config.lua @@ -65,6 +65,7 @@ config.options = { bufferline = true, markdown = true, lightspeed = false, + leap = false, ts_rainbow = false, hop = false, notify = true, diff --git a/lua/catppuccin/core/integrations/leap.lua b/lua/catppuccin/core/integrations/leap.lua new file mode 100644 index 0000000..ae84e99 --- /dev/null +++ b/lua/catppuccin/core/integrations/leap.lua @@ -0,0 +1,38 @@ +local M = {} + +local is_prepared + +local function set_prepared(val) + is_prepared = val +end + +local function get_prepared() + return is_prepared +end + +function M.get(cp) + + if not get_prepared() then + local catppuccin = require("catppuccin") + if catppuccin.after_loading ~= nil then + catppuccin.after_loading = function () + catppuccin.after_loading() + require'leap'.init_highlight(true) + end + else + catppuccin.after_loading = function () + require'leap'.init_highlight(true) + end + end + set_prepared(true) + end + + return { + LeapLabelPrimary = {bg = cp.surface1, fg = cp.text}, + LeapLabelSecondary = {bg = cp.surface1, fg = cp.text}, + LeapBackdrop = {bg = cp.base, fg = cp.overlay0}, + LeapMatch = {bg = cp.base, fg = cp.red, style = "underline"}, + } +end + +return M