[Feature Request] Keyboard text selection in the prompt input: Shift+Arrow to start and extend, Cmd+Shift+Arrow to the line ends

Status Open
Reported on v2.1.270
Maintainer reply None cached
Activity 0 comments · opened Sep 13, 2026

Problem

Follow-up to #27561, closed as available in fullscreen with "if a specific interaction is still missing after switching, please open a focused issue for it." This is that issue: selecting text in the prompt input with the keyboard.

The habit from every macOS editor: hold Shift and press an arrow to start and extend a selection from the cursor, Cmd+Shift+Left/Right to grab to the line start or end, then Cmd+C, Backspace, or type over it.

What happens today (2.1.270, "tui": "fullscreen", Ghostty 1.3.1)

  1. In the prompt input, Shift+Left/Right/Up/Down and Shift+Home/End do nothing. The Chat keybinding context has no selection:* action, and there is no input:select* action to bind.
  2. The selection:extendLeft/Right/Up/Down/LineStart/LineEnd actions exist only in the Scroll context, and their handler returns early unless a mouse selection already exists, so they cannot start a selection in the transcript either.
  3. The terminal is not in the way. Ghostty's default shift+arrow binds are performable, so they pass through to Claude Code whenever Ghostty has no selection of its own.

Proposed behavior

  1. Shift+Arrow in the prompt input starts a selection at the cursor if none exists, otherwise extends it. Shift+Home/End and Cmd+Shift+Left/Right (Cmd where the terminal reports Super, otherwise the Ctrl or Meta equivalents per the keybindings docs) extend to the line ends.
  2. Cmd+C or Ctrl+Shift+C copies the selection, Backspace deletes it, typing replaces it, any unshifted movement clears it.
  3. Expose the actions (input:select*, or selection:* in the Chat context) so they can be rebound in keybindings.json.

Related: #23396 (closed as a duplicate of #14789, which was closed not planned before fullscreen shipped), #21855, #52912.

Environment

Claude Code 2.1.270, macOS (Darwin 25.6), Ghostty 1.3.1, fullscreen TUI.

View original on GitHub ↗