From 3bae1d68b247f14c678ed2946f76eea2551fa586 Mon Sep 17 00:00:00 2001 From: Stefan Imhoff Date: Sat, 11 Dec 2021 13:48:28 +0100 Subject: [PATCH] chore(vim): add bufferline.nvim and configuration --- nvim/plugin-config.vim | 1 + nvim/plugins.vim | 1 + nvim/plugins/bufferline.lua | 55 +++++++++++++++++++++++++++++++++++++ 3 files changed, 57 insertions(+) create mode 100644 nvim/plugins/bufferline.lua diff --git a/nvim/plugin-config.vim b/nvim/plugin-config.vim index 3cb79a3..261569c 100644 --- a/nvim/plugin-config.vim +++ b/nvim/plugin-config.vim @@ -4,3 +4,4 @@ source ~/.config/nvim/plugins/autopairs.lua source ~/.config/nvim/plugins/base16.vim source ~/.config/nvim/plugins/blamer.vim source ~/.config/nvim/plugins/bookmarks.vim +source ~/.config/nvim/plugins/bufferline.lua diff --git a/nvim/plugins.vim b/nvim/plugins.vim index c2a935f..036c1d3 100644 --- a/nvim/plugins.vim +++ b/nvim/plugins.vim @@ -14,6 +14,7 @@ call plug#begin(data_dir . '/plugins') Plug 'chriskempson/base16-vim' Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } +Plug 'akinsho/bufferline.nvim' " Tpope Plug 'tpope/vim-abolish' diff --git a/nvim/plugins/bufferline.lua b/nvim/plugins/bufferline.lua new file mode 100644 index 0000000..c6a0b55 --- /dev/null +++ b/nvim/plugins/bufferline.lua @@ -0,0 +1,55 @@ +-- bufferline.nvim +-- https://github.com/akinsho/bufferline.nvim + +local status, bufferline = pcall(require, 'bufferline') +if (not status) then return end + +bufferline.setup({ + highlights = { + fill = { + guibg = "#282828" + }, + separator_selected = { + guifg = "#282828" + }, + separator_visible = { + guifg = "#282828" + }, + separator = { + guifg = "#282828" + } + }, + options = { + modified_icon = "●", + left_trunc_marker = "", + right_trunc_marker = "", + max_name_length = 25, + max_prefix_length = 25, + enforce_regular_tabs = false, + view = "multiwindow", + show_buffer_close_icons = true, + show_close_icon = false, + separator_style = "slant", + diagnostics = "nvim_lsp", + diagnostics_update_in_insert = false, + diagnostics_indicator = function(count, level, diagnostics_dict, context) + return "("..count..")" + end, + offsets = { + { + filetype = "NvimTree", + text = "File Explorer", + highlight = "Directory", + text_align = "left" + } + } + } +}) + +-- Mappings +local opts = { noremap = true, silent = true } + +vim.api.nvim_set_keymap('n', 'tp', [[:BufferLinePick]], opts) +vim.api.nvim_set_keymap('n', 'tx', [[:BufferLinePickClose]], opts) +vim.api.nvim_set_keymap('n', 'H', [[:BufferLineCyclePrev]], opts) +vim.api.nvim_set_keymap('n', 'L', [[:BufferLineCycleNext]], opts)