From 41335c1618d3c7c1c5950a228ea15e2d0c3c2d8d Mon Sep 17 00:00:00 2001 From: Rory Dudley Date: Mon, 30 Sep 2024 21:55:42 -0600 Subject: Add backslashes to words with spaces in autocomplete() This patch makes it so that the autcomplete() function automatically inserts the backslash character (`\`) into words with spaces when cylcing through the options. Signed-off-by: Rory Dudley --- src/buffer.rs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/buffer.rs b/src/buffer.rs index c27946f..4d00d34 100644 --- a/src/buffer.rs +++ b/src/buffer.rs @@ -154,12 +154,22 @@ fn autocomplete( path.file_name().unwrap().to_str().unwrap().to_string() }; - let path = if word.is_empty() { + let mut path = if word.is_empty() { path } else { path[word.len()..].to_string() }; + let pause_positions = path + .chars() + .enumerate() + .filter(|(_, c)| *c == ' ') + .map(|(i, _)| i) + .collect::>(); + for pos in pause_positions { + path.insert(pos, '\\'); + } + print!("{}", path); Ok((path, paths.len())) -- cgit v1.2.3