Skip to content

Instantly share code, notes, and snippets.

@yavorski
Created May 24, 2025 16:48
Show Gist options
  • Save yavorski/10461be51e1539c0179943ceaf7b33e0 to your computer and use it in GitHub Desktop.
Save yavorski/10461be51e1539c0179943ceaf7b33e0 to your computer and use it in GitHub Desktop.
Override native vim/neovim command with "cabbrev" example
-- override native command with "cabbrev" example
-- delete buffers without losing window layout
Lazy.use {
"echasnovski/mini.bufremove",
cmd = { "Bdelete", "Bwipeout" },
keys = {
{ "<leader>q", "<cmd>Bdelete<cr>", silent = true, desc = "Quit Buffer" },
{ "<leader>e", "<cmd>Bwipeout<cr>", silent = true, desc = "Wipeout Buffer" }
},
config = function()
vim.api.nvim_create_user_command("Bdelete", function(opts) require("mini.bufremove").delete(tonumber(opts.args) or 0, opts.bang) end, { bang = true, nargs = "?" })
vim.api.nvim_create_user_command("Bwipeout", function(opts) require("mini.bufremove").wipeout(tonumber(opts.args) or 0, opts.bang) end, { bang = true, nargs = "?" })
-- override native bd
vim.cmd[[cabbrev bd Bdelete]]
vim.cmd[[cabbrev bdelete Bdelete]]
-- override native bw
vim.cmd[[cabbrev bw Bwipeout]]
vim.cmd[[cabbrev bwipeout Bwipeout]]
end
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment