From f74d4c73f28713e0fb225c4696ee0d9af7222487 Mon Sep 17 00:00:00 2001 From: Oscar Wallberg Date: Mon, 4 Sep 2023 20:22:59 +0200 Subject: [PATCH] Add bufdelete --- lua/config/bufdelete.lua | 6 ++++ lua/config/bufferline.lua | 69 ++++++++++++++++++++------------------- lua/core/mappings.lua | 2 -- lua/plugins.lua | 4 +++ 4 files changed, 45 insertions(+), 36 deletions(-) create mode 100644 lua/config/bufdelete.lua diff --git a/lua/config/bufdelete.lua b/lua/config/bufdelete.lua new file mode 100644 index 0000000..14496ee --- /dev/null +++ b/lua/config/bufdelete.lua @@ -0,0 +1,6 @@ +vim.keymap.set( + "n", + "q", + ":Bwipeout", + { remap = false, silent = true, } +) diff --git a/lua/config/bufferline.lua b/lua/config/bufferline.lua index 3b89643..5ec2402 100644 --- a/lua/config/bufferline.lua +++ b/lua/config/bufferline.lua @@ -23,41 +23,42 @@ local ft_map = { fugitive = false, } -require("bufferline").setup( - { - options = { - diagnostics = "nvim_lsp", - diagnostics_update_in_insert = false, - custom_filter = function (buf, _) - local buf_ft = vim.bo[buf].filetype +require("bufferline").setup({ + options = { + close_command = "Bwipeout %d", + right_mouse_command = nil, + middle_mouse_command = "Bwipeout %d", + diagnostics = "nvim_lsp", + diagnostics_update_in_insert = false, + custom_filter = function (buf, _) + local buf_ft = vim.bo[buf].filetype - if ft_map[buf_ft] == nil then - ft_map[buf_ft] = true -- enable by default - end + if ft_map[buf_ft] == nil then + ft_map[buf_ft] = true -- enable by default + end - return ft_map[buf_ft] - end, - offsets = { - { - filetype = "NvimTree", - text = "File Explorer", - text_align = "center", - seperator = true, - }, - { - filetype = "fugitive", - text = "Fugitive", - text_align = "center", - seperator = true, - }, - { - filetype = "aerial", - text = "Aerial", - text_align = "center", - seperator = true, - }, + return ft_map[buf_ft] + end, + offsets = { + { + filetype = "NvimTree", + text = "File Explorer", + text_align = "center", + seperator = true, + }, + { + filetype = "fugitive", + text = "Fugitive", + text_align = "center", + seperator = true, + }, + { + filetype = "aerial", + text = "Aerial", + text_align = "center", + seperator = true, }, - sort_by = "id", }, - } -) + sort_by = "id", + }, +}) diff --git a/lua/core/mappings.lua b/lua/core/mappings.lua index 2545bdf..34a2382 100644 --- a/lua/core/mappings.lua +++ b/lua/core/mappings.lua @@ -48,8 +48,6 @@ vim.keymap.set("n", "", ":w", opts) -- Cycle buffers vim.keymap.set("n", "", ":BufferLineCycleNext", opts) vim.keymap.set("n", "", ":BufferLineCyclePrev", opts) --- Close buffer without closing window -vim.keymap.set("n", "q", ":bpspbnbd", opts) --- General mappings --- -- yank/put using named register diff --git a/lua/plugins.lua b/lua/plugins.lua index 38bb09b..c6c30d5 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -191,6 +191,10 @@ local plugins = { "RubixDev/mason-update-all", config = function () require("config.mason_update_all") end, }, + { + "famiu/bufdelete.nvim", + config = function () require("config.bufdelete") end, + }, } local opts = {}