Click-bait heading but explanation :
Suffering from a tantrum (I blame it on low blood sugar), I decided that I have had enough of AI chat engines forcing me to compose longer messages using <shift>+<enter> because plain <enter> submits the message to the AI dev assistant.
Usually that causes a mal-formed request to the agent, before I have given all current instructions and relevant details. It's especially bad when I am asking for strategy advice, and it only gets half the relevant story.
While some chat UI's have handled this by allowing the user to choose what is the submit key, most haven't and most frustratingly, ALL the cores ones I use for dev haven't, and I get the impression never will.
It really slows down my flow.
So I decided there's only answer - disable the enter key !
I used a free utility https://karabiner-elements.pqrs.org to re-map the <enter> key to <space>. I could have totally disabled it, but I thought <space> is the safer option.
Now I will never send a message to an agent by mistake, and I no longer care whether they fix this issue in future or not.
So how do I actually implement <enter> when I need to ?
I also re-mapped <enter> to a seldom used key (in my case <RightCommand> on Mac).
Is it a perfect answer ? Absolutely not.
I still have to exercise some restraint not to press <RightCommand> when I don't mean to, but as it is non-standard, it is much easier to do that
I still have to press <shift>+<RightCommand> for longer multi-line messages. But that's not significantly different to previously.
Dies it prevent malformed submits ? Absolutely
I am protected from sending <enter> when I don't mean to, using <RightCommand>is a more conscious choice.
I haven't yet bothered to configure key usage on a per-application basis, (in email I might want to keep normal <enter> usage).
Posting this in case you clever people have better solutions.
I tried dictating prompts and only reaching for the keyboard when necessary. But it's not a flow I am used to.
I tried 'gush mode'. No line breaks at all - one long paragraph. But this doesn't cut it when I need a list.
How have you solved it ?
It would probably be a good idea to have conventional use of <enter> key