fix!: use new-style autocmds
This commit is contained in:
@@ -31,6 +31,7 @@ extra themes for Kitty, Alacritty, iTerm and Fish.
|
|||||||
### 🍭 Extras
|
### 🍭 Extras
|
||||||
|
|
||||||
<!-- extras:start -->
|
<!-- extras:start -->
|
||||||
|
|
||||||
- [Alacritty](https://github.com/alacritty/alacritty) ([alacritty](extras/alacritty))
|
- [Alacritty](https://github.com/alacritty/alacritty) ([alacritty](extras/alacritty))
|
||||||
- [Delta](https://github.com/dandavison/delta) ([delta](extras/delta))
|
- [Delta](https://github.com/dandavison/delta) ([delta](extras/delta))
|
||||||
- [Dunst](https://dunst-project.org/) ([dunst](extras/dunst))
|
- [Dunst](https://dunst-project.org/) ([dunst](extras/dunst))
|
||||||
@@ -54,7 +55,7 @@ extra themes for Kitty, Alacritty, iTerm and Fish.
|
|||||||
|
|
||||||
## ⚡️ Requirements
|
## ⚡️ Requirements
|
||||||
|
|
||||||
- Neovim >= 0.6.0
|
- Neovim >= 0.7.2
|
||||||
|
|
||||||
## 📦 Installation
|
## 📦 Installation
|
||||||
|
|
||||||
|
|||||||
@@ -69,27 +69,37 @@ function M.highlight(group, hl)
|
|||||||
vim.api.nvim_set_hl(0, group, hl)
|
vim.api.nvim_set_hl(0, group, hl)
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Delete the autocmds when the theme changes to something else
|
|
||||||
function M.onColorScheme()
|
|
||||||
vim.cmd([[autocmd! TokyoNight]])
|
|
||||||
vim.cmd([[augroup! TokyoNight]])
|
|
||||||
end
|
|
||||||
|
|
||||||
---@param config Config
|
---@param config Config
|
||||||
function M.autocmds(config)
|
function M.autocmds(config)
|
||||||
vim.cmd([[augroup TokyoNight]])
|
local group = vim.api.nvim_create_augroup("tokyonight", { clear = true })
|
||||||
vim.cmd([[ autocmd!]])
|
|
||||||
vim.cmd([[ autocmd ColorSchemePre * lua require("tokyonight.util").onColorScheme()]])
|
|
||||||
|
|
||||||
vim.cmd(
|
vim.api.nvim_create_autocmd("ColorSchemePre", {
|
||||||
[[ autocmd FileType ]]
|
group = group,
|
||||||
.. table.concat(config.sidebars, ",")
|
callback = function()
|
||||||
.. [[ setlocal winhighlight=Normal:NormalSB,SignColumn:SignColumnSB]]
|
vim.api.nvim_del_augroup_by_id(group)
|
||||||
)
|
end,
|
||||||
if vim.tbl_contains(config.sidebars, "terminal") then
|
})
|
||||||
vim.cmd([[ autocmd TermOpen * setlocal winhighlight=Normal:NormalSB,SignColumn:SignColumnSB]])
|
local function set_whl()
|
||||||
|
local win = vim.api.nvim_get_current_win()
|
||||||
|
local whl = vim.split(vim.wo[win].winhighlight, ",")
|
||||||
|
vim.list_extend(whl, { "Normal:NormalSB", "SignColumn:SignColumnSB" })
|
||||||
|
whl = vim.tbl_filter(function(hl)
|
||||||
|
return hl ~= ""
|
||||||
|
end, whl)
|
||||||
|
vim.opt_local.winhighlight = table.concat(whl, ",")
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.api.nvim_create_autocmd("FileType", {
|
||||||
|
group = group,
|
||||||
|
pattern = table.concat(config.sidebars, ","),
|
||||||
|
callback = set_whl,
|
||||||
|
})
|
||||||
|
if vim.tbl_contains(config.sidebars, "terminal") then
|
||||||
|
vim.api.nvim_create_autocmd("TermOpen", {
|
||||||
|
group = group,
|
||||||
|
callback = set_whl,
|
||||||
|
})
|
||||||
end
|
end
|
||||||
vim.cmd([[augroup end]])
|
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Simple string interpolation.
|
-- Simple string interpolation.
|
||||||
|
|||||||
Reference in New Issue
Block a user