refactor(#2826): move all winhl to appearance constants

This commit is contained in:
Alexander Courtis 2025-06-16 13:00:33 +10:00
parent 76186fa64b
commit 5377a3fd69
4 changed files with 32 additions and 26 deletions

View File

@ -134,6 +134,29 @@ M.HIGHLIGHT_GROUPS = {
{ group = "NvimTreeDiagnosticHintFolderHL", link = "NvimTreeDiagnosticHintFileHL" }, { group = "NvimTreeDiagnosticHintFolderHL", link = "NvimTreeDiagnosticHintFileHL" },
} }
-- winhighlight for most cases
M.WIN_HL = table.concat({
"EndOfBuffer:NvimTreeEndOfBuffer",
"CursorLine:NvimTreeCursorLine",
"CursorLineNr:NvimTreeCursorLineNr",
"LineNr:NvimTreeLineNr",
"WinSeparator:NvimTreeWinSeparator",
"StatusLine:NvimTreeStatusLine",
"StatusLineNC:NvimTreeStatuslineNC",
"SignColumn:NvimTreeSignColumn",
"Normal:NvimTreeNormal",
"NormalNC:NvimTreeNormalNC",
"NormalFloat:NvimTreeNormalFloat",
"FloatBorder:NvimTreeNormalFloatBorder",
}, ",")
-- winhighlight for help
M.WIN_HL_HELP = table.concat({
"NormalFloat:NvimTreeNormalFloat",
"WinSeparator:NvimTreeWinSeparator",
"CursorLine:NvimTreeCursorLine",
}, ",")
-- nvim-tree highlight groups to legacy -- nvim-tree highlight groups to legacy
M.LEGACY_LINKS = { M.LEGACY_LINKS = {
NvimTreeModifiedIcon = "NvimTreeModifiedFile", NvimTreeModifiedIcon = "NvimTreeModifiedFile",

View File

@ -1,3 +1,4 @@
local appearance = require("nvim-tree.appearance")
local events = require("nvim-tree.events") local events = require("nvim-tree.events")
local utils = require("nvim-tree.utils") local utils = require("nvim-tree.utils")
local log = require("nvim-tree.log") local log = require("nvim-tree.log")
@ -78,20 +79,7 @@ function View:new(args)
cursorlineopt = "both", cursorlineopt = "both",
colorcolumn = "0", colorcolumn = "0",
wrap = false, wrap = false,
winhl = table.concat({ winhl = appearance.WIN_HL,
"EndOfBuffer:NvimTreeEndOfBuffer",
"CursorLine:NvimTreeCursorLine",
"CursorLineNr:NvimTreeCursorLineNr",
"LineNr:NvimTreeLineNr",
"WinSeparator:NvimTreeWinSeparator",
"StatusLine:NvimTreeStatusLine",
"StatusLineNC:NvimTreeStatuslineNC",
"SignColumn:NvimTreeSignColumn",
"Normal:NvimTreeNormal",
"NormalNC:NvimTreeNormalNC",
"NormalFloat:NvimTreeNormalFloat",
"FloatBorder:NvimTreeNormalFloatBorder",
}, ","),
} }
self:configure_width(self.explorer.opts.view.width) self:configure_width(self.explorer.opts.view.width)
@ -640,7 +628,7 @@ end
function View:reset_winhl() function View:reset_winhl()
local winnr = self:get_winnr() local winnr = self:get_winnr()
if winnr and vim.api.nvim_win_is_valid(winnr) then if winnr and vim.api.nvim_win_is_valid(winnr) then
vim.wo[self:get_winnr()].winhl = self.winopts.winhl vim.wo[self:get_winnr()].winhl = appearance.WIN_HL
end end
end end

View File

@ -1,3 +1,4 @@
local appearance = require("nvim-tree.appearance")
local keymap = require("nvim-tree.keymap") local keymap = require("nvim-tree.keymap")
local api = {} -- circular dependency local api = {} -- circular dependency
@ -5,12 +6,6 @@ local PAT_MOUSE = "^<.*Mouse"
local PAT_CTRL = "^<C%-" local PAT_CTRL = "^<C%-"
local PAT_SPECIAL = "^<.+" local PAT_SPECIAL = "^<.+"
local WIN_HL = table.concat({
"NormalFloat:NvimTreeNormalFloat",
"WinSeparator:NvimTreeWinSeparator",
"CursorLine:NvimTreeCursorLine",
}, ",")
local namespace_help_id = vim.api.nvim_create_namespace("NvimTreeHelp") local namespace_help_id = vim.api.nvim_create_namespace("NvimTreeHelp")
local M = { local M = {
@ -210,7 +205,7 @@ local function open()
}) })
-- style it a bit like the tree -- style it a bit like the tree
vim.wo[M.winnr].winhl = WIN_HL vim.wo[M.winnr].winhl = appearance.WIN_HL_HELP
vim.wo[M.winnr].cursorline = M.config.cursorline vim.wo[M.winnr].cursorline = M.config.cursorline
local function toggle_sort() local function toggle_sort()

View File

@ -1,7 +1,7 @@
local M = {} local appearance = require("nvim-tree.appearance")
local utils = require("nvim-tree.utils") local utils = require("nvim-tree.utils")
local view = require("nvim-tree.view")
local M = {}
local function hide(win) local function hide(win)
if win then if win then
@ -72,7 +72,7 @@ local function show(opts)
style = "minimal", style = "minimal",
border = "none" border = "none"
}) })
vim.wo[M.popup_win].winhl = view.View.winopts.winhl vim.wo[M.popup_win].winhl = appearance.WIN_HL
local ns_id = vim.api.nvim_get_namespaces()["NvimTreeHighlights"] local ns_id = vim.api.nvim_get_namespaces()["NvimTreeHighlights"]
local extmarks = vim.api.nvim_buf_get_extmarks(0, ns_id, { line_nr - 1, 0 }, { line_nr - 1, -1 }, { details = true }) local extmarks = vim.api.nvim_buf_get_extmarks(0, ns_id, { line_nr - 1, 0 }, { line_nr - 1, -1 }, { details = true })