From e023a78919be31a9d9747d3735dfd29dd6c6605d Mon Sep 17 00:00:00 2001 From: Cole Helbling Date: Sat, 20 Nov 2021 13:42:40 -0800 Subject: [PATCH] WIP: show all buffers that couldn't be closed --- helix-term/src/commands.rs | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/helix-term/src/commands.rs b/helix-term/src/commands.rs index bf87f446f..2c1535b69 100644 --- a/helix-term/src/commands.rs +++ b/helix-term/src/commands.rs @@ -2090,6 +2090,7 @@ pub mod cmd { return Ok(()); } + let mut nonexistent_buffers = vec![]; for arg in args { let doc_id = editor.documents().find_map(|doc| { let arg_path = Some(Path::new(arg.as_ref())); @@ -2104,12 +2105,19 @@ pub mod cmd { match doc_id { Some(doc_id) => editor.close_document(doc_id, force)?, - None => { - editor.set_error(format!("couldn't close buffer '{}': does not exist", arg)); - } + None => nonexistent_buffers.push(arg), } } + let nonexistent_buffers: Vec<_> = nonexistent_buffers + .into_iter() + .map(|str| format!("'{}'", str)) + .collect(); + editor.set_error(format!( + "couldn't close buffer(s) {}: does not exist", + nonexistent_buffers.join(", ") + )); + Ok(()) }