Files
nvim-config/lua/ward/plugins/bufferline.lua

52 lines
1.7 KiB
Lua

--$ Gives buffers titles
--$ URL: https://github.com/akinsho/bufferline.nvim
--$ :help bufferline
return {
"akinsho/bufferline.nvim",
version = "*",
dependencies = "nvim-tree/nvim-web-devicons",
config = function()
require("bufferline").setup({
options = {
right_mouse_command = "BufferLineTogglePin",
buffer_close_icon = "󰅖",
offsets = {
{
filetype = "NvimTree",
text = "File Explorer",
highlight = "Directory",
separator = true,
},
},
-- separator_style = "slant",
-- indicator = {
-- style = "underline",
-- },
diagnostics = "nvim_lsp",
diagnostics_indicator = function(count, level, diagnostics_dict, context)
local s = " "
for e, n in pairs(diagnostics_dict) do
local sym = e == "error" and "" or (e == "warning" and "" or "")
s = s .. n .. sym
end
return s
end,
},
})
local wk = require("which-key")
wk.add({
{ "<leader>bs", group = "Sort buffers" }, -- Group
{ "<leader>bsp", "<cmd>BufferLineTogglePin<Cr>", desc = "pin" },
{ "<leader>bse", "<cmd>BufferLineSortByExtension<Cr>", desc = "Sort by extension" },
{ "<leader>bsd", "<cmd>BufferLineSortByDirectory<Cr>", desc = "Sort by directory" },
{ "<leader>bst", "<cmd>BufferLineSortByTabs<Cr>", desc = "Sort by tabs" },
{ "<leader>bsh", "<cmd>BufferLineMovePrev<Cr>", desc = "Sort by tabs" },
{ "<leader>bsl", "<cmd>BufferLineMoveNext<Cr>", desc = "Sort by tabs" },
{ "<leader>bb", "<cmd>BufferLineCyclePrev<Cr>", desc = "Previous buffer" },
{ "<leader>bn", "<cmd>BufferLineCycleNext<Cr>", desc = "Next buffer" },
{ "<leader>n", "<cmd>BufferLineCycleNext<Cr>", desc = "Next buffer" },
})
end,
}