[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 12/12] 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.
---
 src/buffer.rs | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/buffer.rs b/src/buffer.rs
index 366f20a..7ece258 100644
--- a/src/buffer.rs
+++ b/src/buffer.rs
@@ -152,12 +152,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::<Vec<_>>();
+    for pos in pause_positions {
+        path.insert(pos, '\\');
+    }
+
     print!("{}", path);
 
     Ok((path, paths.len()))
-- 
2.46.2




References:
[PATCH 01/12] Ignore patch filesRory Dudley <rory@xxxxxxx>
Archive administrator: postmaster AT dwarvish DOT org