Latin characters with diacritics are now folded to their ASCII
equivalents on both the query and the path, so `z cafe` matches /Café
and `z cafe` matches /Café (decomposed, as macOS stores it).
Combining diacritical marks are stripped, and the ligatures æ/œ/ß are
expanded to ae/oe/ss.
Folding uses nucleo-matcher's `chars::normalize`. Its published version
(0.3.1) has a codegen bug that corrupts the Latin Extended Additional
and super/subscript tables, so folding is restricted to the Latin-1
Supplement, Latin Extended-A, and Latin Extended-B blocks, which it
handles correctly; other characters are left untouched (never
mis-folded). This covers the common European accents; the range can be
widened once the fix is released upstream.
Matching remains case-insensitive; smart-case is left to a follow-up.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tx3gvBRHQUhrM9f2pr6gw7