catlover, 4 months ago After hours of trying out different plugins the closest I could find is the lualine & tabby combination: https://sh.itjust.works/pictrs/image/23a32c41-c0cc-4a19-b2ce-523aaf733f7f.png About to test it during work, at first look it looks like it has everything I need, only shows current buffers in tab, and in correct order <span style="color:#323232;">local lualine_theme = require("highlight").lualine_theme </span><span style="color:#323232;">require("lualine").setup({ </span><span style="color:#323232;"> options = { </span><span style="color:#323232;"> icons_enabled = true, </span><span style="color:#323232;"> theme = lualine_theme, </span><span style="color:#323232;"> component_separators = { left = "", right = "" }, </span><span style="color:#323232;"> section_separators = { left = "", right = "" }, </span><span style="color:#323232;"> disabled_filetypes = { </span><span style="color:#323232;"> statusline = {}, </span><span style="color:#323232;"> winbar = {}, </span><span style="color:#323232;"> }, </span><span style="color:#323232;"> ignore_focus = {}, </span><span style="color:#323232;"> globalstatus = true, </span><span style="color:#323232;"> refresh = { </span><span style="color:#323232;"> statusline = 1000, </span><span style="color:#323232;"> tabline = 1000, </span><span style="color:#323232;"> winbar = 1000, </span><span style="color:#323232;"> }, </span><span style="color:#323232;"> }, </span><span style="color:#323232;"> sections = { </span><span style="color:#323232;"> lualine_a = { "branch" }, </span><span style="color:#323232;"> lualine_b = { empty_section }, </span><span style="color:#323232;"> lualine_c = {}, </span><span style="color:#323232;"> lualine_x = {}, </span><span style="color:#323232;"> lualine_y = { { "diagnostics", sections = { "error", "warn" } } }, </span><span style="color:#323232;"> lualine_z = { "location" }, </span><span style="color:#323232;"> }, </span><span style="color:#323232;"> inactive_sections = {}, </span><span style="color:#323232;"> tabline = {}, </span><span style="color:#323232;"> winbar = {}, </span><span style="color:#323232;"> inactive_winbar = {}, </span><span style="color:#323232;"> extensions = { "fugitive", "nvim-tree" }, </span><span style="color:#323232;">}) </span><span style="color:#323232;"> </span><span style="color:#323232;">local theme = { </span><span style="color:#323232;"> fill = "TabLineFill", </span><span style="color:#323232;"> -- Also you can do this: fill = { fg='#f2e9de', bg='#907aa9', style='italic' } </span><span style="color:#323232;"> head = "TabLine", </span><span style="color:#323232;"> current = "TabLineSel", </span><span style="color:#323232;"> tab = "TabLine", </span><span style="color:#323232;"> win = "TabLine", </span><span style="color:#323232;"> tail = "TabLine", </span><span style="color:#323232;">} </span><span style="color:#323232;"> </span><span style="color:#323232;">vim.o.showtabline = 2 </span><span style="color:#323232;">local tabby_theme = require("highlight").tabby_theme </span><span style="color:#323232;">require("tabby.tabline").set(function(line) </span><span style="color:#323232;"> return { </span><span style="color:#323232;"> line.tabs().foreach(function(tab) </span><span style="color:#323232;"> local hl = tab.is_current() and tabby_theme.current or tabby_theme.tab </span><span style="color:#323232;"> </span><span style="color:#323232;"> return { </span><span style="color:#323232;"> line.sep("", hl, tabby_theme.fill), </span><span style="color:#323232;"> tab.number(), </span><span style="color:#323232;"> tab.name(), </span><span style="color:#323232;"> line.sep("", hl, tabby_theme.fill), </span><span style="color:#323232;"> hl = hl, </span><span style="color:#323232;"> margin = " ", </span><span style="color:#323232;"> } </span><span style="color:#323232;"> end), </span><span style="color:#323232;"> line.spacer(), </span><span style="color:#323232;"> line.wins_in_tab(line.api.get_current_tab()).foreach(function(win) </span><span style="color:#323232;"> local hl = win.is_current() and tabby_theme.current or tabby_theme.tab </span><span style="color:#323232;"> </span><span style="color:#323232;"> return { </span><span style="color:#323232;"> line.sep("", hl, tabby_theme.fill), </span><span style="color:#323232;"> win.buf_name(), </span><span style="color:#323232;"> line.sep("", hl, tabby_theme.fill), </span><span style="color:#323232;"> hl = hl, </span><span style="color:#323232;"> margin = " ", </span><span style="color:#323232;"> } </span><span style="color:#323232;"> end), </span><span style="color:#323232;"> hl = tabby_theme.fill, </span><span style="color:#323232;"> } </span><span style="color:#323232;">end) </span>
After hours of trying out different plugins the closest I could find is the lualine & tabby combination:
https://sh.itjust.works/pictrs/image/23a32c41-c0cc-4a19-b2ce-523aaf733f7f.png
About to test it during work, at first look it looks like it has everything I need, only shows current buffers in tab, and in correct order
<span style="color:#323232;">local lualine_theme = require("highlight").lualine_theme </span><span style="color:#323232;">require("lualine").setup({ </span><span style="color:#323232;"> options = { </span><span style="color:#323232;"> icons_enabled = true, </span><span style="color:#323232;"> theme = lualine_theme, </span><span style="color:#323232;"> component_separators = { left = "", right = "" }, </span><span style="color:#323232;"> section_separators = { left = "", right = "" }, </span><span style="color:#323232;"> disabled_filetypes = { </span><span style="color:#323232;"> statusline = {}, </span><span style="color:#323232;"> winbar = {}, </span><span style="color:#323232;"> }, </span><span style="color:#323232;"> ignore_focus = {}, </span><span style="color:#323232;"> globalstatus = true, </span><span style="color:#323232;"> refresh = { </span><span style="color:#323232;"> statusline = 1000, </span><span style="color:#323232;"> tabline = 1000, </span><span style="color:#323232;"> winbar = 1000, </span><span style="color:#323232;"> }, </span><span style="color:#323232;"> }, </span><span style="color:#323232;"> sections = { </span><span style="color:#323232;"> lualine_a = { "branch" }, </span><span style="color:#323232;"> lualine_b = { empty_section }, </span><span style="color:#323232;"> lualine_c = {}, </span><span style="color:#323232;"> lualine_x = {}, </span><span style="color:#323232;"> lualine_y = { { "diagnostics", sections = { "error", "warn" } } }, </span><span style="color:#323232;"> lualine_z = { "location" }, </span><span style="color:#323232;"> }, </span><span style="color:#323232;"> inactive_sections = {}, </span><span style="color:#323232;"> tabline = {}, </span><span style="color:#323232;"> winbar = {}, </span><span style="color:#323232;"> inactive_winbar = {}, </span><span style="color:#323232;"> extensions = { "fugitive", "nvim-tree" }, </span><span style="color:#323232;">}) </span><span style="color:#323232;"> </span><span style="color:#323232;">local theme = { </span><span style="color:#323232;"> fill = "TabLineFill", </span><span style="color:#323232;"> -- Also you can do this: fill = { fg='#f2e9de', bg='#907aa9', style='italic' } </span><span style="color:#323232;"> head = "TabLine", </span><span style="color:#323232;"> current = "TabLineSel", </span><span style="color:#323232;"> tab = "TabLine", </span><span style="color:#323232;"> win = "TabLine", </span><span style="color:#323232;"> tail = "TabLine", </span><span style="color:#323232;">} </span><span style="color:#323232;"> </span><span style="color:#323232;">vim.o.showtabline = 2 </span><span style="color:#323232;">local tabby_theme = require("highlight").tabby_theme </span><span style="color:#323232;">require("tabby.tabline").set(function(line) </span><span style="color:#323232;"> return { </span><span style="color:#323232;"> line.tabs().foreach(function(tab) </span><span style="color:#323232;"> local hl = tab.is_current() and tabby_theme.current or tabby_theme.tab </span><span style="color:#323232;"> </span><span style="color:#323232;"> return { </span><span style="color:#323232;"> line.sep("", hl, tabby_theme.fill), </span><span style="color:#323232;"> tab.number(), </span><span style="color:#323232;"> tab.name(), </span><span style="color:#323232;"> line.sep("", hl, tabby_theme.fill), </span><span style="color:#323232;"> hl = hl, </span><span style="color:#323232;"> margin = " ", </span><span style="color:#323232;"> } </span><span style="color:#323232;"> end), </span><span style="color:#323232;"> line.spacer(), </span><span style="color:#323232;"> line.wins_in_tab(line.api.get_current_tab()).foreach(function(win) </span><span style="color:#323232;"> local hl = win.is_current() and tabby_theme.current or tabby_theme.tab </span><span style="color:#323232;"> </span><span style="color:#323232;"> return { </span><span style="color:#323232;"> line.sep("", hl, tabby_theme.fill), </span><span style="color:#323232;"> win.buf_name(), </span><span style="color:#323232;"> line.sep("", hl, tabby_theme.fill), </span><span style="color:#323232;"> hl = hl, </span><span style="color:#323232;"> margin = " ", </span><span style="color:#323232;"> } </span><span style="color:#323232;"> end), </span><span style="color:#323232;"> hl = tabby_theme.fill, </span><span style="color:#323232;"> } </span><span style="color:#323232;">end) </span>