From 10821aae2c129305374e9c6005cb4e4faa3d13f4 Mon Sep 17 00:00:00 2001 From: Smit Barmase Date: Sat, 5 Apr 2025 05:01:56 +0530 Subject: [PATCH] file_finder: Fix filename matching to require contiguous characters (#28093) Improves https://github.com/zed-industries/zed/pull/27937 to only prioritize file name if it's contiguous character match. Release Notes: - N/A Co-authored-by: Conrad Irwin --- crates/file_finder/src/file_finder.rs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/crates/file_finder/src/file_finder.rs b/crates/file_finder/src/file_finder.rs index 1a74c4e4bb80657bf98eda5622d854e6de83c03c..7a54475cc020cf462a181880559ed2245a4cb07f 100644 --- a/crates/file_finder/src/file_finder.rs +++ b/crates/file_finder/src/file_finder.rs @@ -581,7 +581,16 @@ impl Matches { let filename_str = filename.to_string_lossy(); if let Some(filename_pos) = path_str.rfind(&*filename_str) { - return panel_match.0.positions[0] >= filename_pos; + if panel_match.0.positions[0] >= filename_pos { + let mut prev_position = panel_match.0.positions[0]; + for p in &panel_match.0.positions[1..] { + if *p != prev_position + 1 { + return false; + } + prev_position = *p; + } + return true; + } } }