CodeEditSourceEditor icon indicating copy to clipboard operation
CodeEditSourceEditor copied to clipboard

✨ Select Next/Previous Occurrence

Open austincondiff opened this issue 1 year ago • 0 comments

Description

We should allow users to navigate between occurrences of the selected text within the currently open document using the keyboard shortcuts:

  • Select Next Occurrence: E
  • Select Previous Occurrence: E

This feature will leverage the existing Find in Document mechanism and displays a loop / end of document HUD when navigating between matches (see #1 for details).

Additional Context

  • When navigating through occurrences, all matches should be highlighted, with the currently selected match prominently highlighted.
  • If "Wrap Around" is enabled, the loop HUD should be displayed upon reaching the end or beginning of the document, providing a visual cue that no more matches are available in that direction.
  • This feature should align with the existing Find functionality.

[!NOTE] We may want to leverage the functionality introduced with in-editor find and replace, and the EmphasisManager.

Requirements

  1. Keyboard Shortcuts:

    • E to select the next occurrence.
    • E to select the previous occurrence.
  2. Loop HUD:

    • If "Wrap Around" is enabled, display a HUD notification when the end or beginning of the document is reached, indicating no further matches are available, otherwise display a end of file HUD.
  3. Highlighting:

    • Ensure all occurrences of the selected text are highlighted.
    • The currently selected occurrence should be temporarily highlighted to guide user focus using the EmphasisManager.
  4. Find in Document Mechanism Integration:

    • The implementation should utilize the existing Find in Document mechanism to maintain consistency across the app's search and navigation features.

Related Issues

  • #1

Screenshots

https://github.com/user-attachments/assets/3810a585-0a6d-4636-acb9-fd330dd9ae26

image

austincondiff avatar Nov 08 '24 20:11 austincondiff