Исправление teod0r, (текущая версия) :
по сути это действительно связано именно с терминалом, а не с интерпретатором и даже не с обработчиком сигналов. потому что должна быть определённая реакция на ввод (комбинация клавиш и т.п.), а не на какой не сигнал. потому что может быть запущен какой-нибудь nano или lynx, которому плевать на интерпретатор, его запустивший и у них свои обработчики комбинации CTRL+C (привет nano). ввод должен обрабатывать имеено терминал, именно комбинацию клавиш, и вызывать обработчик ввода, НЕ сигнала. НО. могут быть ситуации, когда нужно прибить не самый родительский процесс из сессии (screen, tmux, chroot), а начиная с какой-то определённой вложенности. походу, не всё так определённо.
может, есть какие-то временные готовые решения до патчинга ядра? там через какой-нибудь readline или inputrc, или какие там есть механизмы, не шарю в этом. пытался настроить через команду bind — не получилось: пока нахожусь в bash — функция работает, но стоит запустить lynx или даже sleep — им пофиг, у них свой обработчик срабатывает на комбинацию клавиш
Исходная версия teod0r, :
по сути это действительно связано именно с терминалом, а не с интерпретатором и даже не с обработчиком сигналов. потому что должна быть определённая реакция на ввод (комбинация клавиш и т.п.), а не на какой не сигнал. потому что может быть запущен какой-нибудь nano или lynx, которому плевать на интерпретатор, его запустивший и у них свои обработчики комбинации CTRL+C (привет nano). ввод должен обрабатывать имеено терминал, именно комбинацию клавиш, и вызывать обработчик ввода, НЕ сигнала. НО. могут быть ситуации, когда нужно прибить не самый родительский процесс из сессии (screen, tmux, chroot), а начиная с какой-то определённой вложенности. походу, не всё так определённо.
может, есть какие-то временные готовые решения до патчинга ядра? там через какой-нибудь readline или inputrc, или какие там есть механизмы, не шарю в этом. пытался настроить через команду bind — не получилось: пока нахожуть в bash — функция работает, но стоит запустить lynx или даже sleep — им пофиг, у них свой обработчик срабатывает на комбинацию клавиш