Skip to content

feat(search): add fuzzy search mode to search panel#141

Open
he666-ux wants to merge 2 commits into
floatboatai:mainfrom
he666-ux:feat/search-fuzzy-mode
Open

feat(search): add fuzzy search mode to search panel#141
he666-ux wants to merge 2 commits into
floatboatai:mainfrom
he666-ux:feat/search-fuzzy-mode

Conversation

@he666-ux

@he666-ux he666-ux commented Jul 8, 2026

Copy link
Copy Markdown

Why

The roadmap already lists fuzzy search as a planned improvement for
plugin-search, and the current search panel only supports literal, whole-word,
and regexp matching. A fuzzy mode makes it easier to find approximate text when
the user only remembers a partial character sequence.

What Changes

  • add a fuzzy search mode based on ordered subsequence matching
  • add a Fuzzy toggle to the search panel
  • make fuzzy mutually exclusive with regexp and wholeWord
  • support Enter, Next, and Previous navigation for fuzzy matches
  • disable All and replace controls in fuzzy mode to avoid ambiguous behavior in v1

Tests

  • add matcher tests for fuzzy subsequence behavior
  • add case-sensitive fuzzy search coverage
  • add panel interaction tests for fuzzy toggle and mode exclusivity
  • add navigation tests for Enter / Next / Previous under fuzzy mode
  • add UI coverage for disabled select-all / replace controls in fuzzy mode

Validation

  • pnpm test packages/plugin-search/test/plugin-search.test.ts
  • pnpm --filter @floatboat/nexus-plugin-search build
  • pnpm test

@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


heshengqi seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants