Repository navigation
In the Linux version's multiline mode, messages cannot be sent with Shift+Enter. #7093
Description
Before you start
- I searched existing issues and this is not a duplicate. 我已搜索过现有 issue。
What happened? 发生了什么?
After I set the multiline input mode, I can no longer send messages with Shift+Enter.
Steps to reproduce 复现步骤
Set to multiline input mode.
Codewhale version 版本
codewhale 1.10.2
Where did it happen? 在哪里出现?
TUI (terminal interface)
Operating system 操作系统
Linux
How did you get Codewhale? 获取方式
GitHub Releases download
Provider and model 提供商和模型
deepseek-v4.1-flash
Terminal and shell 终端
Deepin 25 Terminal + bash
codewhale doctor (optional)
Logs, screenshots, anything else (optional)
My operating system is Deepin 25.2.2, and the Linux kernel version is 6.18.48-amd64-desktop-rolling.
0.10.3 admission — founder, 2026-10-26
The founder explicitly admitted this report to the full 0.10.3 program. Original GitHub issue #7093 is assigned to milestone v0.10.3 (73); preserve the reporter's body and attribution to @luestr. Reuse this existing #7093 issue rather than filing a duplicate.
Reported environment: Deepin 25 Terminal + bash, Deepin 25.2.2, Linux 6.18.48-amd64-desktop-rolling, GitHub release install. Reported version is literally codewhale 1.10.2; do not silently treat that spelling as independently verified 0.10.2 evidence.
Root owns triage and integration. Inspect negotiated terminal key encoding and multiline submit dispatch, preserve newline/paste safety and existing user bindings, and distinguish terminal inability to encode Shift+Enter from a Codewhale dispatch regression. Acceptance requires a working, truthful submit path in multiline mode for legacy and enhanced keyboard input, existing focused checks, and direct terminal-sequence observations. No new permanent tests/comments requested. Source scope will be narrowed after discovery; do not edit the frozen shared native batch.
Source triage — 2026-10-26
The requested headless Codewhale helper completed using OrcaRouter deepseek/deepseek-v4.1-flash-1017; root independently checked the owning handler. An explicitly reported Shift+Enter in multiline mode reaches submit_decided_composer_input and then App::handle_composer_enter, which reapplies the paste-burst newline guard. Ctrl+Enter instead calls submit_input directly. This is a concrete dispatch defect; a fix must bypass the guard only for deliberate modified submission while preserving bare-Enter paste protection, slash-menu selection and launch/session behavior.
A separate compatibility path remains under investigation: legacy terminals can encode Enter and Shift+Enter identically. The current capability check is cached but can block for up to two seconds on its first call, so any capability-based handling must initialize before the input pump and keep rendering nonblocking. The reporter's actual Deepin key bytes have not been captured; do not claim their exact cause or a Linux reproduction yet.
Readonly helper report: /Volumes/VIXinSSD/CW/artifacts/headless-helpers-20261026/linux-multiline-7093/REPORT.md. Root integration owner remains unchanged; next patch stays outside the frozen native batch until that check completes. No correction is yet compiled, landed or shipped.
Local candidate evidence — 2026-10-26
The candidate now bypasses paste-burst newline handling only for deliberate modified submission, keeps Ctrl+Enter steering behavior, provides Alt+Enter as the portable multiline submit path, and initializes keyboard capability negotiation before the input reader starts. Help reflects the available capability.
The selected existing multiline/key-routing/paste checks passed within a TUI run of 914 passed and four unrelated failures, whose repairs are in progress. Eight scoped PTY observations passed for the frozen vendored event-read example: supported replies, flags-only timeout, delayed/fragmented replies, incomplete replies, unsupported terminal, silence, and source closure. Normal cases preserved ordinary input exactly once and in order; source closure surfaced an error promptly.
This is macOS PTY/source evidence. An actual Deepin terminal run and a fresh full Codewhale TUI observation remain open. The candidate is uncommitted and unshipped; keep this issue In Progress.
Activity
feat: integrate the verified 0.10.3 combined Engine batch [skip ci]
docs(release): 0.10.3 release-note receipts and contributor credit
docs(config): multiline mode sends with Alt+Enter, matching KEYBINDIN…
Hmbown commentedon Oct 28, 2026
Fixed on main in 4cf2d2c with docs in fdcbb6c (multiline mode: Enter inserts a newline, Alt-Enter sends, verified on Linux); ships in 0.10.3.