vscode: Add an option to always send chat messages as [Shift]+[Enter], because IME behavior
Summary
Please add an option to the Codex VS Code extension to permanently change the key used to send messages in the chat pane to always [Shift]+[Enter].
This would allow changing the current behavior where messages are sent using [Enter] (or [Shift]+[Enter] depending on the multiple lines).
Motivation
In some non-English-speaking regions like Japanese-speaking areas, users routinely employ IME (Input Method Editor) functions for text input. Due to conflicts with the [Enter] key used in the IME's pre-editing buffer, users frequently make the mistake of accidentally sending messages they are typing to Codex.
To input correctly, users must constantly be aware of whether Codex sends messages with [Enter] or [Shift]+[Enter], while also considering whether to supplement with [Shift] to avoid [Enter] mistypes. This is extremely painful.
If Codex always sent messages with [Shift]+[Enter], this difficult typing game could be avoided. This would also prevent the problem of accidentally sending messages and consuming tokens.
Some users might prefer combinations like [Ctrl]+[Enter] or [Alt]+[Enter] instead of [Shift]+[Enter]. If that were an option, it would be an even better improvement.
Proposed Behavior
- We can switch settings to always use
[Shift]+[Enter]when sending messages to Codex. - Optional: It would be even better if other key combinations, such as
[Ctrl]+[Enter], could be specified.
Refer
First post: https://github.com/openai/codex/discussions/3024#discussioncomment-15645827
Alternatives Considered
There is a way to change the IME settings and assign something else to the [Enter] key. However, since I already use the IME daily, changing this is extremely difficult. Moreover, if I change the IME settings, I then have to consider compatibility with each individual application. While this might be possible for many applications, just thinking about it is exhausting.
Additional information
_No response_
3 Comments
+1.
Also, I think it’s not enough to “always send with Shift+Enter” — we need an option to avoid using plain Enter for sending at all.
Chat UIs mix Enter / Shift+Enter / Ctrl+Enter inconsistently across tools.
With Japanese/CJK IME in particular, Enter is used constantly to confirm composition, so it becomes the primary cause of accidental sends.
Please expose separate commands for
sendandnewline, and make them remappable via VS Code keybindings.A preset like “Send = Ctrl+Enter (Cmd+Enter on macOS) / Newline = Enter” would cover most cases,
and ideally also allow “Send = Ctrl+J (no Enter involved. IME rarely binds Ctrl+letter combinations)” to significantly reduce mis-sends.
Additionally, this Codex vscode Extension currently has an issue where a prompt, once sent, cannot be corrected and resent.
As a result, if a prompt is mistakenly sent in this way, it leads not only to degraded UX and unnecessary token consumption, but also to serious performance degradation such as the following:
Adding another +1 for making this configurable.
My case is not IME-specific, but it points to the same problem: the current behaviour creates bad muscle memory across tools. Because ChatGPT-style inputs submit on Enter, I’ve found myself retraining into Shift+Enter for line breaks everywhere — email, documents, issue comments, etc. That is backwards from the rest of the writing/editing environment.
In Codex the cost of accidental submission is also higher than ordinary chat, because the prompt may be incomplete but still actionable against a codebase.
I’d strongly prefer a setting where plain Enter inserts a newline, and submission requires either the button or an explicit shortcut such as Ctrl+Enter / Cmd+Enter.