From f4eeae90131b2b7417aa4c956f5ba1dcbbb73519 Mon Sep 17 00:00:00 2001 From: robin Date: Tue, 10 Feb 2026 11:35:16 +0100 Subject: [PATCH] feat(builtins): colorscheme preview --- lua/artio/builtins.lua | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/lua/artio/builtins.lua b/lua/artio/builtins.lua index aa443e7..d9a4258 100644 --- a/lua/artio/builtins.lua +++ b/lua/artio/builtins.lua @@ -416,6 +416,9 @@ builtins.colorschemes = function(props) return vim.fs.basename(f):gsub("%.[^.]+$", "") end, files) + local current = vim.g.colors_name + local bg = vim.o.background + return artio.generic( lst, extend({ @@ -425,6 +428,28 @@ builtins.colorschemes = function(props) vim.cmd.colorscheme(text) end) end, + on_quit = function() + -- reset colorscheme + vim.schedule(function() + if vim.g.colors_name ~= current then + vim.cmd.colorscheme(current) + end + end) + end, + preview_item = function(item) + return vim.api.nvim_create_buf(false, true), + function(w) + local buf = vim.api.nvim_win_get_buf(w) + vim.bo[buf].bufhidden = "wipe" + vim.bo[buf].buftype = "nofile" + + vim.api.nvim_buf_set_lines(buf, 0, -1, false, {}) + vim.api.nvim_win_set_config(w, { hide = true }) + + vim.cmd.colorscheme(item) + vim.o.background = bg + end + end, }, props) ) end -- 2.51.2