feat: disable kind_filter for markdown and help

This commit is contained in:
Folke Lemaitre 2023-10-15 22:34:42 +02:00
parent 57b504b9e8
commit 782fe0bef0
No known key found for this signature in database
GPG key ID: 41F8B1FBACAE2040
2 changed files with 21 additions and 9 deletions

View file

@ -92,7 +92,7 @@ local defaults = {
Variable = "󰀫 ", Variable = "󰀫 ",
}, },
}, },
---@type table<string, string[]>? ---@type table<string, string[]|boolean>?
kind_filter = { kind_filter = {
default = { default = {
"Class", "Class",
@ -109,6 +109,8 @@ local defaults = {
"Struct", "Struct",
"Trait", "Trait",
}, },
markdown = false,
help = false,
-- you can specify a different filter for each filetype -- you can specify a different filter for each filetype
lua = { lua = {
"Class", "Class",
@ -214,7 +216,11 @@ function M.get_kind_filter(buf)
if M.kind_filter == false then if M.kind_filter == false then
return return
end end
return M.kind_filter[ft] or M.kind_filter.default if M.kind_filter[ft] == false then
return
end
---@diagnostic disable-next-line: return-type-mismatch
return type(M.kind_filter) == "table" and type(M.kind_filter.default) == "table" and M.kind_filter.default or nil
end end
---@param name "autocmds" | "options" | "keymaps" ---@param name "autocmds" | "options" | "keymaps"

View file

@ -12,14 +12,20 @@ return {
symbols = {}, symbols = {},
symbol_blacklist = {}, symbol_blacklist = {},
} }
local filter = Config.kind_filter
for kind, symbol in pairs(defaults.symbols) do if type(filter) == "table" then
opts.symbols[kind] = { filter = filter.default
icon = Config.icons.kinds[kind] or symbol.icon, if type(filter) == "table" then
hl = symbol.hl, for kind, symbol in pairs(defaults.symbols) do
} opts.symbols[kind] = {
if not vim.tbl_contains(Config.kind_filter.default, kind) then icon = Config.icons.kinds[kind] or symbol.icon,
table.insert(opts.symbol_blacklist, kind) hl = symbol.hl,
}
if not vim.tbl_contains(filter, kind) then
table.insert(opts.symbol_blacklist, kind)
end
end
end end
end end
return opts return opts