mirror of
https://github.com/fish-shell/fish-shell.git
synced 2026-06-22 07:31:17 -03:00
If I run "sleep 3", type a command and hit enter, then there is no obvious way to cancel or edit the imminent command other than ctrl-c but that also cancels sleep, and doesn't allow editing. (ctrl-z sort of works, but also doesn't allow editing). Let's try to limit ourselves to inserting the buffered command (translating enter to a newline), and only execute once the user actually presses enter after the previous command is done. Hide it behind a new feature flag for now. By making things less scary, this might be more user-friendly, at the risk of breaking expectations in some cases. This also fixes a class of security issues where a command like `cat malicious-file.txt` might output escape sequences, causing the terminal to echo back a malicious command; such files can still insert into the command line but at least not execute it directly. (Since it's only fixed partially I'm not really sure if the security issue is a good enough motivation for this particular change.) Note that bracketed paste probably has similar motivation as this feature. Part of #10987 Closes #10991