diff options
Diffstat (limited to 'lua/lvim/core')
| -rw-r--r-- | lua/lvim/core/alpha.lua | 13 | 
1 files changed, 8 insertions, 5 deletions
| diff --git a/lua/lvim/core/alpha.lua b/lua/lvim/core/alpha.lua index 8d69ebbc..3fded29f 100644 --- a/lua/lvim/core/alpha.lua +++ b/lua/lvim/core/alpha.lua @@ -19,10 +19,14 @@ function M.config()    }  end -local function resolve_buttons(theme_name, entries) +local function resolve_buttons(theme_name, button_section) +  if button_section.val and #button_section.val > 0 then +    return button_section.val +  end +    local selected_theme = require("alpha.themes." .. theme_name)    local val = {} -  for _, entry in pairs(entries) do +  for _, entry in pairs(button_section.entries) do      local on_press = function()        local sc_ = entry[1]:gsub("%s", ""):gsub("SPC", "<leader>")        local key = vim.api.nvim_replace_termcodes(sc_, true, false, true) @@ -32,8 +36,7 @@ local function resolve_buttons(theme_name, entries)      -- this became necessary after recent changes in alpha.nvim (06ade3a20ca9e79a7038b98d05a23d7b6c016174)      button_element.on_press = on_press -    button_element.opts = -      vim.tbl_extend("force", button_element.opts, entry[4] or lvim.builtin.alpha[theme_name].section.buttons.opts) +    button_element.opts = vim.tbl_extend("force", button_element.opts, entry[4] or button_section.opts or {})      table.insert(val, button_element)    end @@ -48,7 +51,7 @@ local function resolve_config(theme_name)    for name, el in pairs(section) do      for k, v in pairs(el) do        if name:match "buttons" and k == "entries" then -        resolved_section[name].val = resolve_buttons(theme_name, v) +        resolved_section[name].val = resolve_buttons(theme_name, el)        elseif v then          resolved_section[name][k] = v        end | 
