zed/crates/fuzzy_nucleo
Finn Eitreim 7b5b0e4e95
fuzzy_nucleo: Refactor multi-atom code to use nucleo::Pattern (#55264)
refactor of the fuzzy_nucleo string and path matching code, instead of
handling the multiple atoms ourselves we can just use `nucleo::Pattern`
and abstract that all away. this replaces the for loop in the
path/string_match_helper functions. all functionality is exactly the
same. basically the same / within some tiny margin of the original.

this could enable the use of `nucleo::Pattern::parse` in the future if
that was wanted, which allows some extra syntax to activate different
matching modes. [more info from
deepwiki](https://deepwiki.com/search/how-do-the-different-atom-matc_37e510de-af27-44a1-a52f-3fc367462e6e?mode=fast).
I'm pretty sure that enabling that is as simple as switching a
`Pattern::new(...)` call with `Pattern::parse(...)`.

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- N/A
2026-05-06 10:56:20 +00:00
..
benches fuzzy_nucleo: Add strings module and route several pickers through it (#54123) 2026-04-20 14:41:29 +02:00
src fuzzy_nucleo: Refactor multi-atom code to use nucleo::Pattern (#55264) 2026-05-06 10:56:20 +00:00
Cargo.toml fuzzy_nucleo: Add strings module and route several pickers through it (#54123) 2026-04-20 14:41:29 +02:00
LICENSE-GPL