Feature request: Add newline insertion action for Chat keybindings

Resolved 💬 4 comments Opened Feb 18, 2026 by johnlee4989 Closed Feb 21, 2026

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

When composing multi-line messages in Claude Code's chat input, there is no way to insert a newline without submitting
the message. The Enter key is bound to submit, and there is no keybinding action available to insert a newline. This
forces users to rely on the external editor (Ctrl+G), which opens a separate application window — adding unnecessary
friction for users who frequently write long or structured messages.

If a chat:newline action were available in the keybindings system, this would be fully solved.

----------------------------------------------------------------------------------------------------------------------------------------------------
Claude Code 채팅 입력창에서 메시지를 전송하지 않고 줄바꿈을 삽입할 방법이 없습니다. Enter 키는 전송에 고정되어 있고,
keybindings에 줄바꿈 삽입 액션 자체가 존재하지 않습니다. 결국 외부 에디터(Ctrl+G)를 열어야 하는데, 매번 별도 창을 열고
닫는 과정이 번거롭습니다.

chat:newline 액션만 추가되면 이 문제는 완전히 해결됩니다.

Proposed Solution

Add a chat:newline (or chat:insertNewline) action to the keybindings system, allowing users to configure Enter as newline and another key as submit.

Example configuration:

{
"context": "Chat",
"bindings": {
"enter": "chat:newline",
"ctrl+enter": "chat:submit"
}
}

----------------------------------------------------------------------------------------------------------------------------------------------------
keybindings 시스템에 chat:newline 액션을 추가해주세요. 그러면 사용자가 아래처럼 설정할 수 있습니다:

  • Enter → 줄바꿈
  • Ctrl+Enter (또는 원하는 키) → 전송

Alternative Solutions

  1. External editor (Ctrl+G): Opens Notepad or another editor to write multi-line text, then pastes it into the chat

input. Works, but requires opening and closing a separate window every time.

  1. Keybinding workarounds: Tried binding Ctrl+Enter, Alt+Enter, and Ctrl+Shift+Enter to chat:submit and unbinding

Enter — but most terminals (including Windows Terminal) cannot distinguish these key combinations from plain Enter at
the terminal level.

----------------------------------------------------------------------------------------------------------------------------------------------------

  1. 외부 에디터 (Ctrl+G): 메모장 등 별도 에디터를 열어 작성 후 붙여넣는 방식. 작동은 하지만 매번 창을 열고 닫아야 해서

번거롭습니다.

  1. Keybinding 우회 시도: Ctrl+Enter, Alt+Enter, Ctrl+Shift+Enter 등을 chat:submit에 바인딩하고 Enter를 unbind

해봤지만, 대부분의 터미널(Windows Terminal 포함)에서 이 키 조합들이 일반 Enter와 동일한 신호로 전달되어 작동하지
않았습니다.

Priority

High - Significant impact on productivity

Feature Category

Interactive mode (TUI)

Use Case Example

Scenario: Writing a detailed bug report or structured prompt in Claude Code.

  1. User wants to send a multi-line message with numbered steps or code snippets.
  2. User types the first line and presses Enter to go to the next line.
  3. Instead of inserting a newline, the message is immediately submitted ??incomplete.
  4. User must either rewrite everything in one line, or open the external editor (Ctrl+G) just to write a few lines.

With chat:newline action:

  1. User presses Enter ??newline inserted, stays in the input.
  2. User finishes composing the full message.
  3. User presses Ctrl+Enter ??message submitted cleanly.

----------------------------------------------------------------------------------------------------------------------------------------------------
시나리오: Claude Code에서 단계별 버그 리포트나 구조화된 프롬프트 작성.

  1. 사용자가 여러 줄 메시지(번호 목록, 코드 포함)를 작성하려 함.
  2. 첫 줄 입력 후 Enter를 누름.
  3. 줄바꿈 대신 메시지가 즉시 전송됨 — 미완성 상태로.
  4. 외부 에디터(Ctrl+G)를 열어야만 멀티라인 입력 가능.

chat:newline 액션이 있다면:

  1. Enter → 줄바꿈 삽입, 입력창에 계속 머뭄.
  2. 메시지 완성.
  3. Ctrl+Enter → 전송.

Additional Context

Similar features in other tools:

  • Slack: Shift+Enter for newline, Enter to submit
  • Discord: Shift+Enter for newline, Enter to submit
  • VS Code terminal: configurable submit key

Technical note:
The keybindings system already supports unbinding keys (setting to null) and custom actions. Adding chat:newline would
be a minimal addition to the existing action registry — no architectural changes needed.

Tested environments:

  • OS: Windows 10
  • Terminal: Windows Terminal
  • Attempted keys: Ctrl+Enter, Alt+Enter, Ctrl+Shift+Enter — all fail due to terminal-level key indistinguishability.

----------------------------------------------------------------------------------------------------------------------------------------------------
유사 기능 참고:

  • Slack: Shift+Enter 줄바꿈, Enter 전송
  • Discord: Shift+Enter 줄바꿈, Enter 전송

기술적 참고사항:
기존 keybindings 시스템은 이미 키 unbind(null 설정)와 커스텀 액션을 지원합니다. chat:newline 액션 추가는 기존 액션
레지스트리에 최소한의 추가만으로 구현 가능하며, 아키텍처 변경이 필요 없습니다.

테스트 환경:

  • OS: Windows 10
  • Terminal: Windows Terminal
  • 시도한 키: Ctrl+Enter, Alt+Enter, Ctrl+Shift+Enter — 터미널 레벨에서 Enter와 동일한 신호로 전달되어 모두 실패.

View original on GitHub ↗

This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗