Configuration Information [Automatically generated, do not change]: Machine: x86_64 OS: linux-gnu Compiler: gcc Compilation CFLAGS: -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -flto=auto -ffat-lto-objects -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall uname output: Linux Tugge 6.8.0-45-generic #45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux Machine Type: x86_64-pc-linux-gnu
Bash Version: 5.2 Patch Level: 21 Release Status: release Description: When a process/job is suspended, foregrounded via ctrl-a as a keybinding for fg, and then suspended again, the tty will be in a surprising state where no input is seen (-echo) Repeat-By: | bind -x '"\C-a":"fg"' # bind C-A to perform fg vim # <ctrl-z> # Terminal still works stty -a > working.txt # store tty settings <ctrl-a> # Put vim in foreground again :q # Quit vim vim # Start a new vim session (*) <ctrl-z> # Terminal is broken stty -a > broken.txt # store tty settings #type text and no echo Dumping the tty configuration before and after the broken state reveals this diff after the second vim command above (*) has been executed: ```console $ diff working.txt broken.txt 4c4 < werase = ^W; lnext = ^V; discard = ^O; min = 1; time = 0; --- > werase = ^W; lnext = <undef>; discard = <undef>; min = 1; time = 0; 6c6 < -ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff --- > -ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl ixon -ixoff 9c9 < isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt --- > isig -icanon iexten -echo echoe echok -echonl -noflsh -xcase -tostop -echoprt ``` The tty can get back into working state by running `stty sane`. By redoing the <start vim> <ctrl-z> <ctrl-a> <quit vim> <stty sane> it can be seen that the terminal will only be broken after every second invocation. Similar issue(?) in fish that has been resolved: https://github.com/fish-shell/fish-shell/issues/2114 I have experienced the same weirdness with other applications than vim, for example python3. I have experienced the issue several terminals: Wezterm, xfce-4 terminal.