Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 9 additions & 2 deletions lua/styler/theme.lua
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,9 @@ function M.load(theme)
self.orig = M.get_current()
self.theme = theme
self:before()
vim.api.nvim_exec_autocmds("ColorSchemePre", { pattern = self.theme.colorscheme })
vim.cmd("colorscheme " .. self.theme.colorscheme)
vim.api.nvim_exec_autocmds("ColorScheme", { pattern = self.theme.colorscheme })
self:after()
end
return ns
Expand All @@ -36,8 +38,13 @@ function M:before()
pcall(function()
require("lazy.core.loader").colorscheme(self.theme.colorscheme)
end)
self.last_eventignore = vim.go.eventignore
-- don't trigger autocmds
vim.go.eventignore = "all"
if vim.fn.has('nvim-0.12') == 1 then
vim.go.eventignore = "all,-ColorSchemePre,-ColorScheme"
else
vim.go.eventignore = "all"
end

-- set to nil, so most themes won't run `hi clear` to prevent flickering
vim.g.colors_name = nil
Expand Down Expand Up @@ -79,7 +86,7 @@ function M:after()
end

-- enable autocmds
vim.go.eventignore = ""
vim.go.eventignore = self.last_eventignore

-- schedule theme reload
vim.schedule(function()
Expand Down