|
1 |
| --- better looking tabs |
2 | 1 | return {
|
3 |
| - "akinsho/bufferline.nvim", |
4 |
| - dependencies = { "nvim-tree/nvim-web-devicons" }, |
5 |
| - version = "*", |
6 |
| - opts = { |
7 |
| - options = { |
8 |
| - mode = "tabs", |
9 |
| - separator_style = "slant", |
| 2 | + "akinsho/bufferline.nvim", |
| 3 | + version = "v4.*", -- Automatically pulls the latest stable version |
| 4 | + lazy = false, -- Load the plugin immediately |
| 5 | + dependencies = { "nvim-tree/nvim-web-devicons" }, -- Optional: for file icons |
| 6 | + config = function() |
| 7 | + require("bufferline").setup({ |
| 8 | + options = { |
| 9 | + numbers = "none", -- Can be "none", "ordinal", "buffer_id", or "both" |
| 10 | + close_command = "bdelete! %d", -- Command to close a buffer |
| 11 | + right_mouse_command = "bdelete! %d", -- Command for right-click buffer close |
| 12 | + left_mouse_command = "buffer %d", -- Command for left-click buffer switch |
| 13 | + middle_mouse_command = nil, -- Middle-click disables action |
| 14 | + indicator = { icon = "▎", style = "icon" }, -- Visual indicator for the active buffer |
| 15 | + buffer_close_icon = "", |
| 16 | + modified_icon = "●", |
| 17 | + left_trunc_marker = "", |
| 18 | + right_trunc_marker = "", |
| 19 | + max_name_length = 18, -- Truncate buffer names |
| 20 | + max_prefix_length = 15, -- Truncate file path prefixes |
| 21 | + tab_size = 18, |
| 22 | + diagnostics = "nvim_lsp", -- Show diagnostics (or set to "coc", "ale", etc.) |
| 23 | + diagnostics_indicator = function(count, level) |
| 24 | + local icon = level:match("error") and "" or "" |
| 25 | + return " " .. icon .. count |
| 26 | + end, |
| 27 | + offsets = { |
| 28 | + { |
| 29 | + filetype = "NvimTree", |
| 30 | + text = "File Explorer", -- Text to display next to the offset |
| 31 | + text_align = "center", |
| 32 | + separator = true, |
| 33 | + }, |
| 34 | + }, |
| 35 | + show_buffer_icons = true, -- Show file type icons |
| 36 | + show_buffer_close_icons = true, -- Show close icons on each buffer |
| 37 | + show_close_icon = true, -- Show close icon in the bufferline |
| 38 | + separator_style = "slant", -- Options: "slant", "padded_slant", "thick", "thin", etc. |
| 39 | + enforce_regular_tabs = false, -- Ensure all tabs are the same width |
| 40 | + always_show_bufferline = true, -- Show bufferline even with one buffer |
| 41 | + }, |
| 42 | + }) |
| 43 | + end, |
| 44 | + keys = { |
| 45 | + { "<Tab>", ":BufferLineCycleNext<CR>", desc = "Next buffer", silent = true }, |
| 46 | + { "<S-Tab>", ":BufferLineCyclePrev<CR>", desc = "Previous buffer", silent = true }, |
| 47 | + { "<leader>bp", ":BufferLinePick<CR>", desc = "Pick buffer" }, |
| 48 | + { "<leader>bc", ":BufferLinePickClose<CR>", desc = "Pick and close buffer" }, |
10 | 49 | },
|
11 |
| - }, |
12 | 50 | }
|
0 commit comments