-- debug.lua -- -- Shows how to use the DAP plugin to debug your code. -- -- Primarily focused on configuring the debugger for Go, but can -- be extended to other languages as well. That's why it's called -- kickstart.nvim and not kitchen-sink.nvim ;) return { -- NOTE: Yes, you can install new plugins here! 'romgrk/barbar.nvim', -- NOTE: And you can specify dependencies as well dependencies = { 'nvim-tree/nvim-web-devicons', }, config = function() local map = vim.api.nvim_set_keymap local opts = { noremap = true, silent = true } -- Move to previous/next map('n', '<A-,>', '<Cmd>BufferPrevious<CR>', opts) map('n', '<A-.>', '<Cmd>BufferNext<CR>', opts) -- Re-order to previous/next map('n', '<A-<>', '<Cmd>BufferMovePrevious<CR>', opts) map('n', '<A->>', '<Cmd>BufferMoveNext<CR>', opts) -- Goto buffer in position... map('n', '<A-1>', '<Cmd>BufferGoto 1<CR>', opts) map('n', '<A-2>', '<Cmd>BufferGoto 2<CR>', opts) map('n', '<A-3>', '<Cmd>BufferGoto 3<CR>', opts) map('n', '<A-4>', '<Cmd>BufferGoto 4<CR>', opts) map('n', '<A-5>', '<Cmd>BufferGoto 5<CR>', opts) map('n', '<A-6>', '<Cmd>BufferGoto 6<CR>', opts) map('n', '<A-7>', '<Cmd>BufferGoto 7<CR>', opts) map('n', '<A-8>', '<Cmd>BufferGoto 8<CR>', opts) map('n', '<A-9>', '<Cmd>BufferGoto 9<CR>', opts) map('n', '<A-0>', '<Cmd>BufferLast<CR>', opts) -- Pin/unpin buffer map('n', '<A-p>', '<Cmd>BufferPin<CR>', opts) -- Close buffer map('n', '<A-c>', '<Cmd>BufferClose<CR>', opts) -- Wipeout buffer -- :BufferWipeout -- Close commands -- :BufferCloseAllButCurrent -- :BufferCloseAllButPinned -- :BufferCloseAllButCurrentOrPinned -- :BufferCloseBuffersLeft -- :BufferCloseBuffersRight -- Magic buffer-picking mode map('n', '<C-p>', '<Cmd>BufferPick<CR>', opts) -- Sort automatically by... map('n', '<Space>bb', '<Cmd>BufferOrderByBufferNumber<CR>', opts) map('n', '<Space>bd', '<Cmd>BufferOrderByDirectory<CR>', opts) map('n', '<Space>bl', '<Cmd>BufferOrderByLanguage<CR>', opts) map('n', '<Space>bw', '<Cmd>BufferOrderByWindowNumber<CR>', opts) end, opts = { -- Enable/disable animations animation = true, -- Enable/disable auto-hiding the tab bar when there is a single buffer auto_hide = false, -- Enable/disable current/total tabpages indicator (top right corner) tabpages = true, -- Enable/disable close button closable = true, -- Enables/disable clickable tabs -- - left-click: go to buffer -- - middle-click: delete buffer clickable = true, -- Enables / disables diagnostic symbols diagnostics = { -- you can use a list { enabled = true, icon = 'ff' }, -- ERROR { enabled = false }, -- WARN { enabled = false }, -- INFO { enabled = true }, -- HINT -- OR `vim.diagnostic.severity` [vim.diagnostic.severity.ERROR] = { enabled = true, icon = 'ff' }, [vim.diagnostic.severity.WARN] = { enabled = false }, [vim.diagnostic.severity.INFO] = { enabled = false }, [vim.diagnostic.severity.HINT] = { enabled = true }, }, -- Excludes buffers from the tabline exclude_ft = { 'javascript' }, exclude_name = { 'package.json' }, -- Hide inactive buffers and file extensions. Other options are `alternate`, `current`, and `visible`. hide = { extensions = true, inactive = true }, -- Disable highlighting alternate buffers highlight_alternate = false, -- Disable highlighting file icons in inactive buffers highlight_inactive_file_icons = false, -- Enable highlighting visible buffers highlight_visible = true, -- Enable/disable icons -- if set to 'numbers', will show buffer index in the tabline -- if set to 'both', will show buffer index and icons in the tabline icons = true, -- If set, the icon color will follow its corresponding buffer -- highlight group. By default, the Buffer*Icon group is linked to the -- Buffer* group (see Highlighting below). Otherwise, it will take its -- default value as defined by devicons. icon_custom_colors = false, -- Configure icons on the bufferline. icon_separator_active = '▎', icon_separator_inactive = '▎', icon_close_tab = '', icon_close_tab_modified = '●', icon_pinned = '車', -- If true, new buffers will be inserted at the start/end of the list. -- Default is to insert after current buffer. insert_at_end = false, insert_at_start = false, -- Sets the maximum padding width with which to surround each tab maximum_padding = 1, -- Sets the minimum padding width with which to surround each tab minimum_padding = 1, -- Sets the maximum buffer name length. maximum_length = 30, -- If set, the letters for each buffer in buffer-pick mode will be -- assigned based on their name. Otherwise or in case all letters are -- already assigned, the behavior is to assign letters in order of -- usability (see order below) semantic_letters = true, -- New buffer letters are assigned in this order. This order is -- optimal for the qwerty keyboard layout but might need adjustement -- for other layouts. letters = 'asdfjkl;ghnmxcvbziowerutyqpASDFJKLGHNMXCVBZIOWERUTYQP', -- Sets the name of unnamed buffers. By default format is "[Buffer X]" -- where X is the buffer number. But only a static string is accepted here. no_name_title = nil, } }