anomalyco / anomalyco/opencode

Windows: select-all bound to super+a (OS-reserved) and word-selection missing ctrl+shift+arrow

Open
#38,585 2 comments 0 reactions 1 assignee View on GitHub

@Hona is already working on this.

Since Jul 24, 2026.

Dominant language
TypeScript
Stars
209k
Forks
27.5k
PR merge metrics
PR metrics pending

Description

Summary

On Windows, two prompt-input selection defaults are effectively unreachable:

  1. input_select_all defaults to super+a. On Windows, Win+A is reserved by the OS (it opens Quick Settings / Action Center) and never reaches the terminal. Combined with ctrl+a being taken by input_line_home, there is no reachable select-all in the prompt at all until you rebind.

  2. Word-selection is bound only to alt+shift+left/right. input_select_word_backward / input_select_word_forward do not include Ctrl+Shift+Arrow, which is the standard word-selection chord on Windows, so that chord silently does nothing.

Environment

  • opencode 1.17.15
  • Windows 11 Pro (26200)
  • Windows Terminal 1.24.11911.0, Windows PowerShell 5.1

The chords are delivered correctly — this is a keymap default, not input parsing

To rule out the terminal layer, I logged the actual ConsoleKeyInfo events at the prompt. The chord arrives intact, with both modifiers:

Ctrl+Shift+LeftArrow    key=LeftArrow   mods=Shift,Control
Ctrl+Shift+RightArrow   key=RightArrow  mods=Shift,Control

So Windows Terminal is encoding and delivering CSI 1;6D / CSI 1;6C correctly; opencode simply has nothing bound to it.

Suggestion

  • Make input_select_all reachable on Windows — ctrl+a or ctrl+shift+a, or a platform-aware default. super+a is unusable there.
  • Add ctrl+shift+left / ctrl+shift+right to the input_select_word_* defaults alongside the existing alt+shift chords.

Both are workaroundable in tui.json, and I've done so locally. Filing because the defaults are surprising on Windows: select-all appears entirely missing rather than merely rebound, which reads as "the prompt has no selection support" to a user who hasn't gone through the keybinds reference.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.