Files
dotfiles/vim/.vim/lua/plugins/bufferline.lua
Christian Nieves 196c9d1a3b simplify google
2025-02-04 23:09:40 +00:00

73 lines
2.5 KiB
Lua

return {
{
"akinsho/bufferline.nvim",
version = "*",
cond = false,
dependencies = { "nvim-tree/nvim-web-devicons" },
opts = {
options = {
hover = {
enabled = true,
delay = 200,
reveal = { "close" },
},
indicator = {
-- icon = "▎", -- this should be omitted if indicator style is not 'icon'
style = "icon", -- | 'underline' | 'none',
},
offsets = {
{
filetype = "NvimTree",
text = "File Explorer",
highlight = "Directory",
separator = true, -- use a "true" to enable the default, or set your own character
},
},
-- mode = "tabs",
diagnostics = "nvim_lsp",
diagnostics_indicator = function(count, level, diagnostics_dict, context)
local symbols = { error = "", warning = "", info = "", hint = "󱠂 " }
local icon = symbols[level] or level
return "" .. icon .. count
end,
max_name_length = 30,
truncate_name = false,
show_close_icon = false,
show_buffer_close_icons = false,
groups = {
options = {
toggle_hidden_on_enter = true, -- when you re-enter a hidden group this options re-opens that group so the buffer is visible
},
items = {
{
name = "Tests", -- Mandatory
highlight = { sp = "lightblue" }, -- Optional
priority = 2, -- determines where it will appear relative to other groups (Optional)
icon = "", -- Optional
matcher = function(buf) -- Mandatory
return buf.path:match("%_test.cc$") or buf.path:match("%Test.java$")
end,
},
{
name = "Docs",
highlight = { sp = "lightgreen" },
auto_close = false, -- whether or not close this group if it doesn't contain the current buffer
matcher = function(buf)
return buf.path:match("%.md$") or buf.path:match("%.txt$")
end,
},
{
name = "Lua",
highlight = { sp = "lightblue" },
auto_close = false, -- whether or not close this group if it doesn't contain the current buffer
matcher = function(buf)
return buf.path:match("%.lua$")
end,
},
},
},
},
},
},
}