feat: make delete_buffer command with no argument delete the current buffer

This commit is contained in:
CJ van den Berg 2025-09-23 15:51:27 +02:00
parent 024eb8b43b
commit be758be087
Signed by: neurocyte
GPG key ID: 8EB1E1BB660E3FB9

View file

@ -617,8 +617,10 @@ const cmds = struct {
pub fn delete_buffer(self: *Self, ctx: Ctx) Result { pub fn delete_buffer(self: *Self, ctx: Ctx) Result {
var file_path: []const u8 = undefined; var file_path: []const u8 = undefined;
if (!(ctx.args.match(.{tp.extract(&file_path)}) catch false)) if (!(ctx.args.match(.{tp.extract(&file_path)}) catch false)) {
return error.InvalidDeleteBufferArgument; const editor = self.get_active_editor() orelse return error.InvalidDeleteBufferArgument;
file_path = editor.file_path orelse return error.InvalidDeleteBufferArgument;
}
const buffer = self.buffer_manager.get_buffer_for_file(file_path) orelse return; const buffer = self.buffer_manager.get_buffer_for_file(file_path) orelse return;
if (buffer.is_dirty()) if (buffer.is_dirty())
return tp.exit("unsaved changes"); return tp.exit("unsaved changes");