2
0
Fork 0
mirror of https://github.com/fish-shell/fish-shell synced 2025-02-13 12:43:43 +00:00
fish-shell/tests/pexpects
ridiculousfish 3cb105adbd Restore terminal modes after running key bindings with external commands
This concerns the behavior when running an external command from a key
binding. The history is:

Prior to 5f16a299a7, fish would run these external commands in shell
modes. This meant that fish would pick up any tty changes from external
commands (see ).

After 5f16a299a7, fish would save and restore its shell modes around
these external commands. This introduced a regression where anything the
user typed while a bound external command was executing would be echoed,
because external command mode has ECHO set in c_lflag. (This can be
reproed easily with `bind -q 'sleep 1'` and then pressing q and typing).
So 5f16a299a7 was reverted in fd9355966.

This commit partially reverts fd9355966. It has it both ways: external
commands are launched with shell modes, but/and shell modes are restored
after the external command completes. This allows commands to muck with
the tty, as long as they can handle getting shell modes; but it does not
enable ECHO mode so it fixes the regression found in .

Fixes . Fixes  (for the third time!)

This partially reverts commit fd9355966e.
2021-03-10 22:36:33 -08:00
..
bind.py tests: Deactivate that one bind test that still keeps failing 2021-01-26 07:07:51 +01:00
bind_mode_events.py Reformat pexpects 2020-06-08 17:33:04 +02:00
cancel_event.py Reformat 2020-11-22 14:39:48 +01:00
commandline.py Don't enqueue a repaint in the middle of one 2020-09-11 19:23:26 +02:00
complete.py Reset the readline loop state when setting the buffer 2021-02-25 16:19:28 +01:00
exit.py Reformat 2020-11-22 14:39:48 +01:00
exit_handlers.py Add a test that fish_exit handlers run on receipt of SIGHUP 2020-08-30 15:09:34 -07:00
fg.py Restore terminal modes after running key bindings with external commands 2021-03-10 22:36:33 -08:00
fkr.py Tests: Yet another delay change 2020-11-11 19:20:55 +01:00
generic.py type: Add missing newline 2021-01-03 17:48:25 +01:00
histfile.py Another formatting run 2020-06-24 20:43:56 +02:00
history.py Make history search smartcase 2020-09-22 16:13:24 +02:00
isatty.py Reformat 2020-11-22 14:39:48 +01:00
job_summary.py Reformat 2020-11-22 14:39:48 +01:00
pipeline.py Restyle codebase 2020-12-06 15:39:54 +01:00
postexec.py Reformat 2020-11-22 14:39:48 +01:00
private_mode.py Allow fish_private_mode to change at runtime 2021-01-02 22:01:47 -08:00
read.py Port read tests to expect 2020-06-13 15:21:40 +02:00
set_color.py Fix crash with set_color --print-colors --background normal 2021-03-09 13:46:08 +01:00
sigint.py Correctly propagate signals from cancelled jobs into parse_execution_context 2020-08-13 15:30:15 -07:00
signals.py tests: Add yet another sleep 2020-09-27 09:22:45 +02:00
terminal.py Only enable actual flow control on Linux 2021-02-15 17:30:50 +01:00
tty_ownership.py Reformat 2020-11-22 14:39:48 +01:00
undo.py Add simple pexpect test for undo 2021-01-07 23:53:31 +01:00
wait.py tests: Increase another timeout 2020-11-06 17:56:38 +01:00