Hello, I'm debugging the reason why Ctrl-C can be ignored. U stumbled upon this: 1. I open shell, enter "ls ", then press Ctrl-C 2. Debug logs from before "< master Zle select()" and after "> master Zle select()" occur 3. At first Ctrl-C, there are 24 select() recurrent code execution paths – the logs around select() are triggered ~24 times. 4. At second "ls ", there are 96 recurrent code paths. 5. At third "ls , there are 197 recurrent code paths. The logs are: BASIC < select Before: selret: 0, errflag: 0, retflag: 0, breaks: 0, exit_pending: 0 BASIC > select After: selret: 0, errflag: 0, retflag: 0, breaks: 0, exit_pending: 0 two lines, installed before master select() (first line) and after the master select (second line). Could it be that Zsh reacts in this way after occurring Ctrl-C? It's somewhat hard to believe. That's why I include also patch with debug prints that I've used. Maybe someone will just apply it and do "ls ". Also: asciinema recording, showing how the series of logs grow (1 tmux screen / page, then 4 tmux screens / pages, then 9 pages to scroll up to see the logs beginnings'): https://asciinema.org/a/hC24KqphbztwQfk5ApZbOYU2y -- Best regards, Sebastian Gniazdowski