Skip to content

[ENHANCEMENT] Chat: Ctrl Enter Send #8555

@lmtr0

Description

@lmtr0

Problem (one or two sentences)

The current default behavior (Enter = send, Shift+Enter = newline) can lead to accidental prompt submissions and increased physical strain, particularly when writing long or structured prompts.

Context (who is affected and when)

This affects power users who frequently write multiline prompts, especially those using CJK input methods (Chinese, Japanese, Korean), where the Enter key is often used to confirm inline text composition rather than submit content. These users are prone to accidentally sending incomplete prompts, which disrupts workflow and wastes API tokens.

Desired behavior (conceptual, not technical)

Provide a toggle in the settings—ideally under a dedicated "UI" section—to switch between two input modes:

  • Option 1: Enter = newline, Shift+Enter / Ctrl+Enter = send
  • Option 2: Enter = send, Shift+Enter = newline (current default)

This would allow users to customize the editor behavior according to their typing habits and ergonomic preferences without changing the default globally.

Constraints / preferences (optional)

  • Do not introduce hardcoded shortcuts that conflict with common OS or editor defaults (e.g., Ctrl+Y).
  • Leverage VS Code's built-in support for customizable keybindings where possible.
  • The setting should be opt-in and clearly labeled but not require user education by default.
  • Avoid introducing multiple new global shortcuts; instead, consider Alt+Enter as a potential extensible "special action" key for future use (e.g., inserting current file, terminal content), but keep that separate from this change.

Request checklist

  • I've searched existing Issues and Discussions for duplicates
  • This describes a specific problem with clear context and impact

Roo Code Task Links (optional)

No response

Acceptance criteria (optional)

No response

Proposed approach (optional)

No response

Trade-offs / risks (optional)

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Issue - In ProgressSomeone is actively working on this. Should link to a PR soon.enhancementNew feature or request

    Type

    No type

    Projects

    Status

    Issue [In Progress]

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions