neovim-rose-pine/lua/rose-pine/functions.lua

35 lines
898 B
Lua
Raw Normal View History

2021-05-18 11:15:39 -05:00
local select_variant = function(variant)
vim.g.rose_pine_variant = variant
2021-05-27 18:40:06 -05:00
local formatted_variant = ''
if variant == 'base' then
formatted_variant = ''
else
formatted_variant = variant:sub(1, 1):upper() .. variant:sub(2)
end
2021-05-27 18:40:06 -05:00
print('Rosé Pine', formatted_variant)
2021-05-18 11:15:39 -05:00
vim.cmd([[colorscheme rose-pine]])
end
local toggle_variant = function(variants)
2021-05-27 18:40:06 -05:00
local options = variants or { 'base', 'moon', 'dawn' }
local index = {}
for k, v in pairs(options) do
index[v] = k
end
if vim.g.rose_pine_variant_switch == nil then
-- Ensure theme toggles from correct position
vim.g.rose_pine_variant_switch = index[vim.g.rose_pine_variant] or 0
end
2021-05-18 11:15:39 -05:00
2021-07-12 22:57:42 -05:00
vim.g.rose_pine_variant_switch = (
vim.g.rose_pine_variant_switch % table.getn(options)
) + 1
2021-05-18 11:15:39 -05:00
select_variant(options[vim.g.rose_pine_variant_switch])
end
return {
select_variant = select_variant,
toggle_variant = toggle_variant,
}