Files
dotfiles/.config/matugen/templates/neovim/init.lua
2026-02-06 17:17:48 +08:00

73 lines
2.1 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- ==========================================================================
-- 1. 自动安装插件管理器 (Lazy.nvim)
-- ==========================================================================
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({
"git",
"clone",
"--filter=blob:none",
"https://github.com/folke/lazy.nvim.git",
"--branch=stable",
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
-- ==========================================================================
-- 2. 加载插件 (已替换为更稳定的源)
-- ==========================================================================
require("lazy").setup({
{
-- 【关键修改】换成了官方社区版,更稳定,不会报错
"RRethy/base16-nvim",
lazy = false,
priority = 1000,
},
})
-- ==========================================================================
-- 3. Matugen 热更新逻辑
-- ==========================================================================
local function source_matugen()
local matugen_path = vim.fn.stdpath('config') .. "/generated.lua"
local f = io.open(matugen_path, "r")
if f ~= nil then
io.close(f)
-- 尝试执行生成的文件
local ok, err = pcall(dofile, matugen_path)
if not ok then
-- 如果加载出错,只打印提示,不阻断启动
print("Matugen Load Error: " .. err)
end
else
-- 如果还没有生成过文件,使用内置主题兜底
vim.cmd.colorscheme('habamax')
end
end
-- 热重载函数
local function matugen_reload()
-- 重新加载颜色
source_matugen()
-- 如果你有 lualine可以在这里刷新
-- package.loaded['lualine'] = nil
-- require('lualine').setup({ options = { theme = 'base16' } })
-- 修复一些高亮丢失
vim.api.nvim_set_hl(0, "Comment", { italic = true })
end
-- 监听 Matugen 发出的信号
vim.api.nvim_create_autocmd("Signal", {
pattern = "SIGUSR1",
callback = function()
matugen_reload()
print("Matugen 颜色已更新!")
end,
})
-- 启动时加载一次
source_matugen()