[FEATURE]: Add keybind to navigate between user messages #3311

Closed
opened 2026-02-16 17:39:37 -05:00 by yindo · 2 comments
Owner

Originally created by @will-marella on GitHub (Dec 4, 2025).

Feature hasn't been suggested before.

  • I have verified this feature I'm about to request hasn't been suggested before.

Describe the enhancement you want to request

Currently, navigating between user messages in long conversations is challenging. Page up/down scrolls incrementally, and it's easy to overshoot past your own messages when AI outputs are very long.

Proposed Solution: Add a configurable keybind that jumps directly to the previous/next user message in the chat. The feature would:

  1. Detect visible message boundaries in the viewport
  2. Snap directly to the nearest previous/next user message
  3. If the target message isn't visible yet, scroll by one viewport height to load more messages

My proposed solution snaps directly to the nearest previous/user message even for very long messages that are well out of user view.

Behavior:

  • If the user is at the most recent message, it will default to page down.
  • If at the end of scroll (no more space), it will have no effect.
  • Works smoothly with very long outputs (tested with 6000+ lines in VSCode and Ghostty)

Other details:

  • Keybind will default to "none" to avoid collisions with existing shortcuts
  • PR will included updated keybinds documentation for easy configuration

I have a working implementation ready and will submit a PR shortly.

Originally created by @will-marella on GitHub (Dec 4, 2025). ### Feature hasn't been suggested before. - [x] I have verified this feature I'm about to request hasn't been suggested before. ### Describe the enhancement you want to request Currently, navigating between user messages in long conversations is challenging. Page up/down scrolls incrementally, and it's easy to overshoot past your own messages when AI outputs are very long. Proposed Solution: Add a configurable keybind that jumps directly to the previous/next user message in the chat. The feature would: 1. Detect visible message boundaries in the viewport 2. Snap directly to the nearest previous/next user message 3. If the target message isn't visible yet, scroll by one viewport height to load more messages My proposed solution snaps directly to the nearest previous/user message even for very long messages that are well out of user view. Behavior: - If the user is at the most recent message, it will default to page down. - If at the end of scroll (no more space), it will have no effect. - Works smoothly with very long outputs (tested with 6000+ lines in VSCode and Ghostty) Other details: - Keybind will default to "none" to avoid collisions with existing shortcuts - PR will included updated keybinds documentation for easy configuration I have a working implementation ready and will submit a PR shortly.
yindo added the discussion label 2026-02-16 17:39:37 -05:00
yindo closed this issue 2026-02-16 17:39:37 -05:00
Author
Owner

@github-actions[bot] commented on GitHub (Dec 4, 2025):

This issue might be a duplicate of existing issues. Please check:

  • #3337: Feature Request: Navigation Shortcut to Jump Between User Messages - This is the original feature request for jumping between user messages using keybinds (e.g., SHIFT+arrow keys)
  • #5029: Add keybinds to scroll to prev/next user message - A recently closed issue requesting messages_previous_user/messages_next_user keybinds for the same functionality

Feel free to ignore if this is a refinement or implementation of those feature requests.

@github-actions[bot] commented on GitHub (Dec 4, 2025): This issue might be a duplicate of existing issues. Please check: - #3337: Feature Request: Navigation Shortcut to Jump Between User Messages - This is the original feature request for jumping between user messages using keybinds (e.g., SHIFT+arrow keys) - #5029: Add keybinds to scroll to prev/next user message - A recently closed issue requesting `messages_previous_user`/`messages_next_user` keybinds for the same functionality Feel free to ignore if this is a refinement or implementation of those feature requests.
Author
Owner

@danmondra commented on GitHub (Dec 5, 2025):

This!

Although I personally would prefer just having a keybinding for moving half a viewport up and down (like Ctrl + u or Ctrl + d does in vim).

@danmondra commented on GitHub (Dec 5, 2025): This! Although I personally would prefer just having a keybinding for moving half a viewport up and down (like Ctrl + u or Ctrl + d does in vim).
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: anomalyco/opencode#3311