diff options
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/bufdelete.lua | 45 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/neogit.lua | 9 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/notify.lua | 8 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/utils.lua | 2 |
4 files changed, 41 insertions, 23 deletions
diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/bufdelete.lua b/nvim/.config/nvim/lua/tobyvin/plugins/bufdelete.lua index 91c6ce4..1a1fe0a 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/bufdelete.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/bufdelete.lua @@ -1,6 +1,5 @@ -local M = { - augroup = vim.api.nvim_create_augroup("bufdelete", { clear = true }), -} +local utils = require("tobyvin.utils") +local M = {} M.get_listed_buffers = function() local buffers = {} @@ -16,29 +15,35 @@ M.get_listed_buffers = function() end M.setup = function() - vim.api.nvim_create_autocmd("User", { - pattern = "BDeletePre", - group = M.augroup, - callback = function(event) - local found_non_empty_buffer = false - local buffers = M.get_listed_buffers() + local status_ok, bufdelete = pcall(require, "bufdelete") + if not status_ok then + vim.notify("Failed to load module 'bufdelete'", "error") + return + end + + local nmap = utils.create_map_group("n", "<leader>") + nmap("c", bufdelete.bufdelete, { desc = "Close buffer" }) + + local alpha_ok, alpha = pcall(require, "alpha") + if alpha_ok then + local augroup = vim.api.nvim_create_augroup("BufDeleteAlpha", { clear = true }) - for _, bufnr in ipairs(buffers) do - if not found_non_empty_buffer then + vim.api.nvim_create_autocmd("User", { + pattern = "BDeletePre", + group = augroup, + callback = function(event) + local buffers = M.get_listed_buffers() + for _, bufnr in ipairs(buffers) do local name = vim.api.nvim_buf_get_name(bufnr) local ft = vim.api.nvim_buf_get_option(bufnr, "filetype") - if bufnr ~= event.buf and name ~= "" and ft ~= "Alpha" then - found_non_empty_buffer = true + return end + alpha.start() end - end - - if not found_non_empty_buffer then - vim.cmd([[:Alpha]]) - end - end, - }) + end, + }) + end end return M diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/neogit.lua b/nvim/.config/nvim/lua/tobyvin/plugins/neogit.lua index 1c6c49b..0b5424a 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/neogit.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/neogit.lua @@ -8,9 +8,14 @@ M.setup = function() return end - neogit.setup({ disable_commit_confirmation = true, disable_signs = true }) + neogit.setup({ + disable_commit_confirmation = true, + disable_signs = true, + integrations = { + diffview = true, + }, + }) - vim.notify("Loading neogit") local nmap = utils.create_map_group("n", "<leader>g", "git") nmap("g", neogit.open, { desc = "Neogit" }) end diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/notify.lua b/nvim/.config/nvim/lua/tobyvin/plugins/notify.lua index e3b1163..fdb22d8 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/notify.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/notify.lua @@ -1,3 +1,4 @@ +local utils = require("tobyvin.utils") local M = {} M.setup = function() @@ -12,6 +13,13 @@ M.setup = function() }) vim.notify = notify + + local telescope_ok, telescope = pcall(require, "telescope") + if telescope_ok then + telescope.load_extension("notify") + local nmap = utils.create_map_group("n", "<leader>f", "Find") + nmap("n", telescope.extensions.notify.notify, { desc = "Notifications" }) + end end return M diff --git a/nvim/.config/nvim/lua/tobyvin/utils.lua b/nvim/.config/nvim/lua/tobyvin/utils.lua index b55a8b6..e171dc1 100644 --- a/nvim/.config/nvim/lua/tobyvin/utils.lua +++ b/nvim/.config/nvim/lua/tobyvin/utils.lua @@ -4,7 +4,7 @@ M.create_map_group = function(mode, prefix, name, g_opts) g_opts = g_opts or {} local status_ok, which_key = pcall(require, "which-key") - if status_ok then + if status_ok and name then which_key.register({ [prefix] = { name = name } }, vim.tbl_extend("force", { mode = mode }, g_opts)) end |