/
telnov.ob
/
nvim-config
Обзор
Документация
Войти
/
telnov.ob
/
nvim-config
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
lua/config/theme.lua
37 строк
1020 B
Sergey M
изменил структуру
29 апр 2026, 13:09
29 апр 2026, 13:09
b5615bb
Код
Авторство
О чём код?
local theme_file = vim.fn.stdpath('config') .. '/theme.json' local fallback = 'habamax' local function load_theme() local f = io.open(theme_file, 'r') if not f then return nil end local content = f:read('*a') f:close() local ok, data = pcall(vim.json.decode, content) return ok and data.colorscheme or nil end local function save_theme(theme) local json = vim.fn.json_encode({ colorscheme = theme }) vim.fn.writefile({ json }, theme_file) end -- Автоматическое сохранение темы при ее установке vim.api.nvim_create_autocmd('ColorScheme', { callback = function(args) if args.match ~= load_theme() then save_theme(args.match) end end, }) -- Применяем тему после загрузки всех плагинов vim.api.nvim_create_autocmd('VimEnter', { callback = function() local cs = load_theme() or fallback if not pcall(vim.cmd.colorscheme, cs) then pcall(vim.cmd.colorscheme, fallback) end end, })