mirror of
https://github.com/pojokcodeid/nvim-lazy.git
synced 2025-06-22 00:49:01 +02:00
update config bufferline support nvim 0.9
This commit is contained in:
parent
3d9a94ffec
commit
da4e2f4467
3 changed files with 300 additions and 219 deletions
|
@ -13,7 +13,7 @@
|
||||||
"codeium.vim": { "branch": "main", "commit": "1dc5aff16f906e221b7b73668ed8d8bfc40ecd6b" },
|
"codeium.vim": { "branch": "main", "commit": "1dc5aff16f906e221b7b73668ed8d8bfc40ecd6b" },
|
||||||
"dressing.nvim": { "branch": "master", "commit": "0e3e1eba147fee6e638ac1ac28f0495bcde17319" },
|
"dressing.nvim": { "branch": "master", "commit": "0e3e1eba147fee6e638ac1ac28f0495bcde17319" },
|
||||||
"fidget.nvim": { "branch": "main", "commit": "0ba1e16d07627532b6cae915cc992ecac249fb97" },
|
"fidget.nvim": { "branch": "main", "commit": "0ba1e16d07627532b6cae915cc992ecac249fb97" },
|
||||||
"friendly-snippets": { "branch": "main", "commit": "8f26df063f0fdabc27845c7aed56db9102d385e8" },
|
"friendly-snippets": { "branch": "main", "commit": "b1b78a6433268fc172adb5a843e165035e83861e" },
|
||||||
"gitsigns.nvim": { "branch": "main", "commit": "bb808fc7376ed7bac0fbe8f47b83d4bf01738167" },
|
"gitsigns.nvim": { "branch": "main", "commit": "bb808fc7376ed7bac0fbe8f47b83d4bf01738167" },
|
||||||
"gruvbox-baby": { "branch": "main", "commit": "ea71b4225d0140103d99748ca4a33ecf22c03f62" },
|
"gruvbox-baby": { "branch": "main", "commit": "ea71b4225d0140103d99748ca4a33ecf22c03f62" },
|
||||||
"impatient.nvim": { "branch": "main", "commit": "969f2c5c90457612c09cf2a13fee1adaa986d350" },
|
"impatient.nvim": { "branch": "main", "commit": "969f2c5c90457612c09cf2a13fee1adaa986d350" },
|
||||||
|
@ -24,6 +24,7 @@
|
||||||
"lualine.nvim": { "branch": "master", "commit": "84ffb80e452d95e2c46fa29a98ea11a240f7843e" },
|
"lualine.nvim": { "branch": "master", "commit": "84ffb80e452d95e2c46fa29a98ea11a240f7843e" },
|
||||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "6c8f7afd6162fa27719f9da9792e4314da41c501" },
|
"mason-lspconfig.nvim": { "branch": "main", "commit": "6c8f7afd6162fa27719f9da9792e4314da41c501" },
|
||||||
"mason-null-ls.nvim": { "branch": "main", "commit": "04fc5094269c4354f0409d515d1d9539a0d076e3" },
|
"mason-null-ls.nvim": { "branch": "main", "commit": "04fc5094269c4354f0409d515d1d9539a0d076e3" },
|
||||||
|
"mason-nvim-dap.nvim": { "branch": "main", "commit": "5c99ca9ef50dbcfb855f3b93a220b687e097ffac" },
|
||||||
"mason.nvim": { "branch": "main", "commit": "5b25e13f905b26cd4ab2be64fec072c18a943220" },
|
"mason.nvim": { "branch": "main", "commit": "5b25e13f905b26cd4ab2be64fec072c18a943220" },
|
||||||
"mini.animate": { "branch": "main", "commit": "ca9b687b6da98b48081dc72e27a9657c85cde135" },
|
"mini.animate": { "branch": "main", "commit": "ca9b687b6da98b48081dc72e27a9657c85cde135" },
|
||||||
"mini.indentscope": { "branch": "main", "commit": "43f6761c9a3e397b7c12b3c72f678bcf61efcfcf" },
|
"mini.indentscope": { "branch": "main", "commit": "43f6761c9a3e397b7c12b3c72f678bcf61efcfcf" },
|
||||||
|
@ -32,6 +33,8 @@
|
||||||
"nvim-autopairs": { "branch": "master", "commit": "4fc96c8f3df89b6d23e5092d31c866c53a346347" },
|
"nvim-autopairs": { "branch": "master", "commit": "4fc96c8f3df89b6d23e5092d31c866c53a346347" },
|
||||||
"nvim-cmp": { "branch": "main", "commit": "777450fd0ae289463a14481673e26246b5e38bf2" },
|
"nvim-cmp": { "branch": "main", "commit": "777450fd0ae289463a14481673e26246b5e38bf2" },
|
||||||
"nvim-colorizer.lua": { "branch": "master", "commit": "dde3084106a70b9a79d48f426f6d6fec6fd203f7" },
|
"nvim-colorizer.lua": { "branch": "master", "commit": "dde3084106a70b9a79d48f426f6d6fec6fd203f7" },
|
||||||
|
"nvim-dap": { "branch": "master", "commit": "debd7c2f80eaf20c5f5df25db8d8c1b9b18f4421" },
|
||||||
|
"nvim-dap-ui": { "branch": "master", "commit": "bdb94e3853d11b5ce98ec182e5a3719d5c0ef6fd" },
|
||||||
"nvim-lsp-installer": { "branch": "main", "commit": "17e0bfa5f2c8854d1636fcd036dc8284db136baa" },
|
"nvim-lsp-installer": { "branch": "main", "commit": "17e0bfa5f2c8854d1636fcd036dc8284db136baa" },
|
||||||
"nvim-lspconfig": { "branch": "master", "commit": "255e07ce2a05627d482d2de77308bba51b90470c" },
|
"nvim-lspconfig": { "branch": "master", "commit": "255e07ce2a05627d482d2de77308bba51b90470c" },
|
||||||
"nvim-material-icon": { "branch": "main", "commit": "602088c2682e61cbebd7191de7dc88bfa90c6890" },
|
"nvim-material-icon": { "branch": "main", "commit": "602088c2682e61cbebd7191de7dc88bfa90c6890" },
|
||||||
|
|
|
@ -1,218 +1,78 @@
|
||||||
local status_ok, bufferline = pcall(require, "bufferline")
|
local status_ok, bufferline = pcall(require, "bufferline")
|
||||||
if not status_ok then
|
if not status_ok then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
local icons = require("user.icons")
|
local icons = require("user.icons")
|
||||||
local use_icons = true
|
local use_icons = true
|
||||||
|
|
||||||
local function diagnostics_indicator(num, _, diagnostics, _)
|
local function diagnostics_indicator(num, _, diagnostics, _)
|
||||||
local result = {}
|
local result = {}
|
||||||
local symbols = {
|
local symbols = {
|
||||||
error = icons.diagnostics.Error,
|
error = icons.diagnostics.Error,
|
||||||
warning = icons.diagnostics.Warning,
|
warning = icons.diagnostics.Warning,
|
||||||
info = icons.diagnostics.Information,
|
info = icons.diagnostics.Information,
|
||||||
}
|
}
|
||||||
if not use_icons then
|
if not use_icons then
|
||||||
return "(" .. num .. ")"
|
return "(" .. num .. ")"
|
||||||
end
|
end
|
||||||
for name, count in pairs(diagnostics) do
|
for name, count in pairs(diagnostics) do
|
||||||
if symbols[name] and count > 0 then
|
if symbols[name] and count > 0 then
|
||||||
table.insert(result, symbols[name] .. " " .. count)
|
table.insert(result, symbols[name] .. " " .. count)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
result = table.concat(result, " ")
|
result = table.concat(result, " ")
|
||||||
return #result > 0 and result or ""
|
return #result > 0 and result or ""
|
||||||
end
|
end
|
||||||
|
|
||||||
bufferline.setup({
|
vim.opt.termguicolors = true
|
||||||
options = {
|
|
||||||
color_icons = true,
|
bufferline.setup({
|
||||||
numbers = "none", -- | "ordinal" | "buffer_id" | "both" | function({ ordinal, id, lower, raise }): string,
|
options = {
|
||||||
--close_command = "Bdelete! %d", -- can be a string | function, see "Mouse actions"
|
color_icons = true,
|
||||||
close_command = function(bufnum)
|
numbers = "none", -- | "ordinal" | "buffer_id" | "both" | function({ ordinal, id, lower, raise }): string,
|
||||||
require("bufdelete").bufdelete(bufnum, true)
|
close_command = function(bufnum)
|
||||||
end,
|
require("bufdelete").bufdelete(bufnum, true)
|
||||||
--right_mouse_command = "Bdelete! %d", -- can be a string | function, see "Mouse actions"
|
end,
|
||||||
right_mouse_command = function(bufnum)
|
right_mouse_command = function(bufnum)
|
||||||
require("bufdelete").bufdelete(bufnum, true)
|
require("bufdelete").bufdelete(bufnum, true)
|
||||||
end,
|
end,
|
||||||
left_mouse_command = "buffer %d", -- can be a string | function, see "Mouse actions"
|
indicator_icon = nil,
|
||||||
middle_mouse_command = nil, -- can be a string | function, see "Mouse actions"
|
indicator = { style = "icon", icon = "▎" },
|
||||||
-- NOTE: this plugin is designed with this icon in mind,
|
buffer_close_icon = icons.ui.Close,
|
||||||
-- and so changing this is NOT recommended, this is intended
|
modified_icon = icons.ui.Circle,
|
||||||
-- as an escape hatch for people who cannot bear it for whatever reason
|
close_icon = icons.ui.BoldClose,
|
||||||
indicator_icon = nil,
|
left_trunc_marker = icons.ui.ArrowCircleLeft,
|
||||||
indicator = { style = "icon", icon = "▎" },
|
right_trunc_marker = icons.ui.ArrowCircleRight,
|
||||||
--buffer_close_icon = "",
|
max_name_length = 30,
|
||||||
buffer_close_icon = icons.ui.Close,
|
max_prefix_length = 30,
|
||||||
-- buffer_close_icon = '',
|
tab_size = 21,
|
||||||
-- modified_icon = "●",
|
diagnostics = false, -- | "nvim_lsp" | "coc",
|
||||||
modified_icon = icons.ui.Circle,
|
diagnostics_update_in_insert = false,
|
||||||
-- close_icon = "",
|
diagnostics_indicator = diagnostics_indicator,
|
||||||
close_icon = icons.ui.BoldClose,
|
offsets = {
|
||||||
-- close_icon = '',
|
{
|
||||||
--left_trunc_marker = "",
|
filetype = "NvimTree",
|
||||||
left_trunc_marker = icons.ui.ArrowCircleLeft,
|
text = "Explorer",
|
||||||
--right_trunc_marker = "",
|
highlight = "Directory",
|
||||||
right_trunc_marker = icons.ui.ArrowCircleRight,
|
text_align = "left",
|
||||||
--- name_formatter can be used to change the buffer's label in the bufferline.
|
padding = 1,
|
||||||
--- Please note some names can/will break the
|
},
|
||||||
--- bufferline so use this at your discretion knowing that it has
|
{
|
||||||
--- some limitations that will *NOT* be fixed.
|
filetype = "neo-tree",
|
||||||
-- name_formatter = function(buf) -- buf contains a "name", "path" and "bufnr"
|
text = "Explorer",
|
||||||
-- -- remove extension from markdown files for example
|
highlight = "Directory",
|
||||||
-- if buf.name:match('%.md') then
|
text_align = "left",
|
||||||
-- return vim.fn.fnamemodify(buf.name, ':t:r')
|
padding = 1,
|
||||||
-- end
|
},
|
||||||
-- end,
|
},
|
||||||
max_name_length = 30,
|
show_buffer_icons = true,
|
||||||
max_prefix_length = 30, -- prefix used when a buffer is de-duplicated
|
show_buffer_close_icons = true,
|
||||||
tab_size = 21,
|
show_close_icon = true,
|
||||||
diagnostics = false, -- | "nvim_lsp" | "coc",
|
show_tab_indicators = true,
|
||||||
diagnostics_update_in_insert = false,
|
persist_buffer_sort = true, -- whether or not custom sorted buffers should persist
|
||||||
diagnostics_indicator = diagnostics_indicator,
|
separator_style = "thin", -- | "thick" | "thin" | { 'any', 'any' },
|
||||||
-- diagnostics_indicator = function(count, level, diagnostics_dict, context)
|
enforce_regular_tabs = true,
|
||||||
-- return "("..count..")"
|
always_show_bufferline = true,
|
||||||
-- end,
|
},
|
||||||
-- NOTE: this will be called a lot so don't do any heavy processing here
|
})
|
||||||
-- custom_filter = function(buf_number)
|
|
||||||
-- -- filter out filetypes you don't want to see
|
|
||||||
-- if vim.bo[buf_number].filetype ~= "<i-dont-want-to-see-this>" then
|
|
||||||
-- return true
|
|
||||||
-- end
|
|
||||||
-- -- filter out by buffer name
|
|
||||||
-- if vim.fn.bufname(buf_number) ~= "<buffer-name-I-dont-want>" then
|
|
||||||
-- return true
|
|
||||||
-- end
|
|
||||||
-- -- filter out based on arbitrary rules
|
|
||||||
-- -- e.g. filter out vim wiki buffer from tabline in your work repo
|
|
||||||
-- if vim.fn.getcwd() == "<work-repo>" and vim.bo[buf_number].filetype ~= "wiki" then
|
|
||||||
-- return true
|
|
||||||
-- end
|
|
||||||
-- end,
|
|
||||||
offsets = {
|
|
||||||
{
|
|
||||||
filetype = "NvimTree",
|
|
||||||
text = "Explorer",
|
|
||||||
highlight = "Directory",
|
|
||||||
text_align = "left",
|
|
||||||
padding = 1,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
filetype = "neo-tree",
|
|
||||||
text = "Explorer",
|
|
||||||
highlight = "Directory",
|
|
||||||
text_align = "left",
|
|
||||||
padding = 1,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
show_buffer_icons = true,
|
|
||||||
show_buffer_close_icons = true,
|
|
||||||
show_close_icon = true,
|
|
||||||
show_tab_indicators = true,
|
|
||||||
persist_buffer_sort = true, -- whether or not custom sorted buffers should persist
|
|
||||||
-- can also be a table containing 2 custom separators
|
|
||||||
-- [focused and unfocused]. eg: { '|', '|' }
|
|
||||||
separator_style = "thin", -- | "thick" | "thin" | { 'any', 'any' },
|
|
||||||
enforce_regular_tabs = true,
|
|
||||||
always_show_bufferline = true,
|
|
||||||
-- sort_by = 'id' | 'extension' | 'relative_directory' | 'directory' | 'tabs' | function(buffer_a, buffer_b)
|
|
||||||
-- -- add custom logic
|
|
||||||
-- return buffer_a.modified > buffer_b.modified
|
|
||||||
-- end
|
|
||||||
},
|
|
||||||
highlights = {
|
|
||||||
fill = {
|
|
||||||
fg = { attribute = "fg", highlight = "#ff0000" },
|
|
||||||
bg = { attribute = "bg", highlight = "TabLine" },
|
|
||||||
},
|
|
||||||
background = {
|
|
||||||
fg = { attribute = "fg", highlight = "TabLine" },
|
|
||||||
bg = { attribute = "bg", highlight = "TabLine" },
|
|
||||||
},
|
|
||||||
|
|
||||||
-- buffer_selected = {
|
|
||||||
-- fg = {attribute='fg',highlight='#ff0000'},
|
|
||||||
-- bg = {attribute='bg',highlight='#0000ff'},
|
|
||||||
-- gui = 'none'
|
|
||||||
-- },
|
|
||||||
buffer_visible = {
|
|
||||||
fg = { attribute = "fg", highlight = "TabLine" },
|
|
||||||
bg = { attribute = "bg", highlight = "TabLine" },
|
|
||||||
},
|
|
||||||
|
|
||||||
close_button = {
|
|
||||||
fg = { attribute = "fg", highlight = "TabLine" },
|
|
||||||
bg = { attribute = "bg", highlight = "TabLine" },
|
|
||||||
},
|
|
||||||
close_button_visible = {
|
|
||||||
fg = { attribute = "fg", highlight = "TabLine" },
|
|
||||||
bg = { attribute = "bg", highlight = "TabLine" },
|
|
||||||
},
|
|
||||||
-- close_button_selected = {
|
|
||||||
-- fg = {attribute='fg',highlight='TabLineSel'},
|
|
||||||
-- bg ={attribute='bg',highlight='TabLineSel'}
|
|
||||||
-- },
|
|
||||||
|
|
||||||
tab_selected = {
|
|
||||||
fg = { attribute = "fg", highlight = "Normal" },
|
|
||||||
bg = { attribute = "bg", highlight = "Normal" },
|
|
||||||
},
|
|
||||||
tab = {
|
|
||||||
fg = { attribute = "fg", highlight = "TabLine" },
|
|
||||||
bg = { attribute = "bg", highlight = "TabLine" },
|
|
||||||
},
|
|
||||||
tab_close = {
|
|
||||||
-- fg = {attribute='fg',highlight='LspDiagnosticsDefaultError'},
|
|
||||||
fg = { attribute = "fg", highlight = "TabLineSel" },
|
|
||||||
bg = { attribute = "bg", highlight = "Normal" },
|
|
||||||
},
|
|
||||||
|
|
||||||
duplicate_selected = {
|
|
||||||
fg = { attribute = "fg", highlight = "TabLineSel" },
|
|
||||||
bg = { attribute = "bg", highlight = "TabLineSel" },
|
|
||||||
underline = true,
|
|
||||||
},
|
|
||||||
duplicate_visible = {
|
|
||||||
fg = { attribute = "fg", highlight = "TabLine" },
|
|
||||||
bg = { attribute = "bg", highlight = "TabLine" },
|
|
||||||
underline = true,
|
|
||||||
},
|
|
||||||
duplicate = {
|
|
||||||
fg = { attribute = "fg", highlight = "TabLine" },
|
|
||||||
bg = { attribute = "bg", highlight = "TabLine" },
|
|
||||||
underline = true,
|
|
||||||
},
|
|
||||||
|
|
||||||
modified = {
|
|
||||||
fg = { attribute = "fg", highlight = "TabLine" },
|
|
||||||
bg = { attribute = "bg", highlight = "TabLine" },
|
|
||||||
},
|
|
||||||
modified_selected = {
|
|
||||||
fg = { attribute = "fg", highlight = "Normal" },
|
|
||||||
bg = { attribute = "bg", highlight = "Normal" },
|
|
||||||
},
|
|
||||||
modified_visible = {
|
|
||||||
fg = { attribute = "fg", highlight = "TabLine" },
|
|
||||||
bg = { attribute = "bg", highlight = "TabLine" },
|
|
||||||
},
|
|
||||||
|
|
||||||
separator = {
|
|
||||||
fg = { attribute = "bg", highlight = "TabLine" },
|
|
||||||
bg = { attribute = "bg", highlight = "TabLine" },
|
|
||||||
},
|
|
||||||
separator_selected = {
|
|
||||||
fg = { attribute = "bg", highlight = "Normal" },
|
|
||||||
bg = { attribute = "bg", highlight = "Normal" },
|
|
||||||
},
|
|
||||||
-- separator_visible = {
|
|
||||||
-- fg = {attribute='bg',highlight='TabLine'},
|
|
||||||
-- bg = {attribute='bg',highlight='TabLine'}
|
|
||||||
-- },
|
|
||||||
indicator_selected = {
|
|
||||||
fg = { attribute = "fg", highlight = "LspDiagnosticsDefaultHint" },
|
|
||||||
bg = { attribute = "bg", highlight = "Normal" },
|
|
||||||
},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
218
lua/user/bufferline_20230416.lua
Normal file
218
lua/user/bufferline_20230416.lua
Normal file
|
@ -0,0 +1,218 @@
|
||||||
|
local status_ok, bufferline = pcall(require, "bufferline")
|
||||||
|
if not status_ok then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
local icons = require("user.icons")
|
||||||
|
local use_icons = true
|
||||||
|
|
||||||
|
local function diagnostics_indicator(num, _, diagnostics, _)
|
||||||
|
local result = {}
|
||||||
|
local symbols = {
|
||||||
|
error = icons.diagnostics.Error,
|
||||||
|
warning = icons.diagnostics.Warning,
|
||||||
|
info = icons.diagnostics.Information,
|
||||||
|
}
|
||||||
|
if not use_icons then
|
||||||
|
return "(" .. num .. ")"
|
||||||
|
end
|
||||||
|
for name, count in pairs(diagnostics) do
|
||||||
|
if symbols[name] and count > 0 then
|
||||||
|
table.insert(result, symbols[name] .. " " .. count)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
result = table.concat(result, " ")
|
||||||
|
return #result > 0 and result or ""
|
||||||
|
end
|
||||||
|
|
||||||
|
bufferline.setup({
|
||||||
|
options = {
|
||||||
|
color_icons = true,
|
||||||
|
numbers = "none", -- | "ordinal" | "buffer_id" | "both" | function({ ordinal, id, lower, raise }): string,
|
||||||
|
--close_command = "Bdelete! %d", -- can be a string | function, see "Mouse actions"
|
||||||
|
close_command = function(bufnum)
|
||||||
|
require("bufdelete").bufdelete(bufnum, true)
|
||||||
|
end,
|
||||||
|
--right_mouse_command = "Bdelete! %d", -- can be a string | function, see "Mouse actions"
|
||||||
|
right_mouse_command = function(bufnum)
|
||||||
|
require("bufdelete").bufdelete(bufnum, true)
|
||||||
|
end,
|
||||||
|
left_mouse_command = "buffer %d", -- can be a string | function, see "Mouse actions"
|
||||||
|
middle_mouse_command = nil, -- can be a string | function, see "Mouse actions"
|
||||||
|
-- NOTE: this plugin is designed with this icon in mind,
|
||||||
|
-- and so changing this is NOT recommended, this is intended
|
||||||
|
-- as an escape hatch for people who cannot bear it for whatever reason
|
||||||
|
indicator_icon = nil,
|
||||||
|
indicator = { style = "icon", icon = "▎" },
|
||||||
|
--buffer_close_icon = "",
|
||||||
|
buffer_close_icon = icons.ui.Close,
|
||||||
|
-- buffer_close_icon = '',
|
||||||
|
-- modified_icon = "●",
|
||||||
|
modified_icon = icons.ui.Circle,
|
||||||
|
-- close_icon = "",
|
||||||
|
close_icon = icons.ui.BoldClose,
|
||||||
|
-- close_icon = '',
|
||||||
|
--left_trunc_marker = "",
|
||||||
|
left_trunc_marker = icons.ui.ArrowCircleLeft,
|
||||||
|
--right_trunc_marker = "",
|
||||||
|
right_trunc_marker = icons.ui.ArrowCircleRight,
|
||||||
|
--- name_formatter can be used to change the buffer's label in the bufferline.
|
||||||
|
--- Please note some names can/will break the
|
||||||
|
--- bufferline so use this at your discretion knowing that it has
|
||||||
|
--- some limitations that will *NOT* be fixed.
|
||||||
|
-- name_formatter = function(buf) -- buf contains a "name", "path" and "bufnr"
|
||||||
|
-- -- remove extension from markdown files for example
|
||||||
|
-- if buf.name:match('%.md') then
|
||||||
|
-- return vim.fn.fnamemodify(buf.name, ':t:r')
|
||||||
|
-- end
|
||||||
|
-- end,
|
||||||
|
max_name_length = 30,
|
||||||
|
max_prefix_length = 30, -- prefix used when a buffer is de-duplicated
|
||||||
|
tab_size = 21,
|
||||||
|
diagnostics = false, -- | "nvim_lsp" | "coc",
|
||||||
|
diagnostics_update_in_insert = false,
|
||||||
|
diagnostics_indicator = diagnostics_indicator,
|
||||||
|
-- diagnostics_indicator = function(count, level, diagnostics_dict, context)
|
||||||
|
-- return "("..count..")"
|
||||||
|
-- end,
|
||||||
|
-- NOTE: this will be called a lot so don't do any heavy processing here
|
||||||
|
-- custom_filter = function(buf_number)
|
||||||
|
-- -- filter out filetypes you don't want to see
|
||||||
|
-- if vim.bo[buf_number].filetype ~= "<i-dont-want-to-see-this>" then
|
||||||
|
-- return true
|
||||||
|
-- end
|
||||||
|
-- -- filter out by buffer name
|
||||||
|
-- if vim.fn.bufname(buf_number) ~= "<buffer-name-I-dont-want>" then
|
||||||
|
-- return true
|
||||||
|
-- end
|
||||||
|
-- -- filter out based on arbitrary rules
|
||||||
|
-- -- e.g. filter out vim wiki buffer from tabline in your work repo
|
||||||
|
-- if vim.fn.getcwd() == "<work-repo>" and vim.bo[buf_number].filetype ~= "wiki" then
|
||||||
|
-- return true
|
||||||
|
-- end
|
||||||
|
-- end,
|
||||||
|
offsets = {
|
||||||
|
{
|
||||||
|
filetype = "NvimTree",
|
||||||
|
text = "Explorer",
|
||||||
|
highlight = "Directory",
|
||||||
|
text_align = "left",
|
||||||
|
padding = 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filetype = "neo-tree",
|
||||||
|
text = "Explorer",
|
||||||
|
highlight = "Directory",
|
||||||
|
text_align = "left",
|
||||||
|
padding = 1,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
show_buffer_icons = true,
|
||||||
|
show_buffer_close_icons = true,
|
||||||
|
show_close_icon = true,
|
||||||
|
show_tab_indicators = true,
|
||||||
|
persist_buffer_sort = true, -- whether or not custom sorted buffers should persist
|
||||||
|
-- can also be a table containing 2 custom separators
|
||||||
|
-- [focused and unfocused]. eg: { '|', '|' }
|
||||||
|
separator_style = "thin", -- | "thick" | "thin" | { 'any', 'any' },
|
||||||
|
enforce_regular_tabs = true,
|
||||||
|
always_show_bufferline = true,
|
||||||
|
-- sort_by = 'id' | 'extension' | 'relative_directory' | 'directory' | 'tabs' | function(buffer_a, buffer_b)
|
||||||
|
-- -- add custom logic
|
||||||
|
-- return buffer_a.modified > buffer_b.modified
|
||||||
|
-- end
|
||||||
|
},
|
||||||
|
highlights = {
|
||||||
|
fill = {
|
||||||
|
fg = { attribute = "fg", highlight = "#ff0000" },
|
||||||
|
bg = { attribute = "bg", highlight = "TabLine" },
|
||||||
|
},
|
||||||
|
background = {
|
||||||
|
fg = { attribute = "fg", highlight = "TabLine" },
|
||||||
|
bg = { attribute = "bg", highlight = "TabLine" },
|
||||||
|
},
|
||||||
|
|
||||||
|
-- buffer_selected = {
|
||||||
|
-- fg = {attribute='fg',highlight='#ff0000'},
|
||||||
|
-- bg = {attribute='bg',highlight='#0000ff'},
|
||||||
|
-- gui = 'none'
|
||||||
|
-- },
|
||||||
|
buffer_visible = {
|
||||||
|
fg = { attribute = "fg", highlight = "TabLine" },
|
||||||
|
bg = { attribute = "bg", highlight = "TabLine" },
|
||||||
|
},
|
||||||
|
|
||||||
|
close_button = {
|
||||||
|
fg = { attribute = "fg", highlight = "TabLine" },
|
||||||
|
bg = { attribute = "bg", highlight = "TabLine" },
|
||||||
|
},
|
||||||
|
close_button_visible = {
|
||||||
|
fg = { attribute = "fg", highlight = "TabLine" },
|
||||||
|
bg = { attribute = "bg", highlight = "TabLine" },
|
||||||
|
},
|
||||||
|
-- close_button_selected = {
|
||||||
|
-- fg = {attribute='fg',highlight='TabLineSel'},
|
||||||
|
-- bg ={attribute='bg',highlight='TabLineSel'}
|
||||||
|
-- },
|
||||||
|
|
||||||
|
tab_selected = {
|
||||||
|
fg = { attribute = "fg", highlight = "Normal" },
|
||||||
|
bg = { attribute = "bg", highlight = "Normal" },
|
||||||
|
},
|
||||||
|
tab = {
|
||||||
|
fg = { attribute = "fg", highlight = "TabLine" },
|
||||||
|
bg = { attribute = "bg", highlight = "TabLine" },
|
||||||
|
},
|
||||||
|
tab_close = {
|
||||||
|
-- fg = {attribute='fg',highlight='LspDiagnosticsDefaultError'},
|
||||||
|
fg = { attribute = "fg", highlight = "TabLineSel" },
|
||||||
|
bg = { attribute = "bg", highlight = "Normal" },
|
||||||
|
},
|
||||||
|
|
||||||
|
duplicate_selected = {
|
||||||
|
fg = { attribute = "fg", highlight = "TabLineSel" },
|
||||||
|
bg = { attribute = "bg", highlight = "TabLineSel" },
|
||||||
|
underline = true,
|
||||||
|
},
|
||||||
|
duplicate_visible = {
|
||||||
|
fg = { attribute = "fg", highlight = "TabLine" },
|
||||||
|
bg = { attribute = "bg", highlight = "TabLine" },
|
||||||
|
underline = true,
|
||||||
|
},
|
||||||
|
duplicate = {
|
||||||
|
fg = { attribute = "fg", highlight = "TabLine" },
|
||||||
|
bg = { attribute = "bg", highlight = "TabLine" },
|
||||||
|
underline = true,
|
||||||
|
},
|
||||||
|
|
||||||
|
modified = {
|
||||||
|
fg = { attribute = "fg", highlight = "TabLine" },
|
||||||
|
bg = { attribute = "bg", highlight = "TabLine" },
|
||||||
|
},
|
||||||
|
modified_selected = {
|
||||||
|
fg = { attribute = "fg", highlight = "Normal" },
|
||||||
|
bg = { attribute = "bg", highlight = "Normal" },
|
||||||
|
},
|
||||||
|
modified_visible = {
|
||||||
|
fg = { attribute = "fg", highlight = "TabLine" },
|
||||||
|
bg = { attribute = "bg", highlight = "TabLine" },
|
||||||
|
},
|
||||||
|
|
||||||
|
separator = {
|
||||||
|
fg = { attribute = "bg", highlight = "TabLine" },
|
||||||
|
bg = { attribute = "bg", highlight = "TabLine" },
|
||||||
|
},
|
||||||
|
separator_selected = {
|
||||||
|
fg = { attribute = "bg", highlight = "Normal" },
|
||||||
|
bg = { attribute = "bg", highlight = "Normal" },
|
||||||
|
},
|
||||||
|
-- separator_visible = {
|
||||||
|
-- fg = {attribute='bg',highlight='TabLine'},
|
||||||
|
-- bg = {attribute='bg',highlight='TabLine'}
|
||||||
|
-- },
|
||||||
|
indicator_selected = {
|
||||||
|
fg = { attribute = "fg", highlight = "LspDiagnosticsDefaultHint" },
|
||||||
|
bg = { attribute = "bg", highlight = "Normal" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
Loading…
Add table
Add a link
Reference in a new issue