๐Ÿฟ bufdelete

May 21, 2026 ยท View on GitHub

Delete buffers without disrupting window layout.

If the buffer you want to close has changes, a prompt will be shown to save or discard.

๐Ÿ“š Types

---@class snacks.bufdelete.Opts
---@field buf? number Buffer to delete. Defaults to the current buffer
---@field file? string Delete buffer by file name. If provided, `buf` is ignored
---@field force? boolean Delete the buffer even if it is modified
---@field filter? fun(buf: number): boolean Filter buffers to delete
---@field wipe? boolean Wipe the buffer instead of deleting it (see `:h :bwipeout`)

๐Ÿ“ฆ Module

Snacks.bufdelete()

---@type fun(buf?: number|snacks.bufdelete.Opts)
Snacks.bufdelete()

Snacks.bufdelete.all()

Delete all buffers

---@param opts? snacks.bufdelete.Opts
Snacks.bufdelete.all(opts)

Snacks.bufdelete.delete()

Delete a buffer:

  • either the current buffer if buf is not provided
  • or the buffer buf if it is a number
  • or every buffer for which buf returns true if it is a function
---@param opts? number|snacks.bufdelete.Opts
Snacks.bufdelete.delete(opts)

Snacks.bufdelete.invisible()

Delete all invisible buffers

---@param opts? snacks.bufdelete.Opts
Snacks.bufdelete.invisible(opts)

Snacks.bufdelete.other()

Delete all buffers except the current one

---@param opts? snacks.bufdelete.Opts
Snacks.bufdelete.other(opts)