Есть ли способ отключить (временно) прерывающий эффект управления C в обычном исполняемом исполняемом файле Haskell?Могу ли я отключить управление-C?
Контекст: У меня есть небольшое упражнение, которое я устанавливаю каждый год. Это игра, в которой ученики застегивают на молнии вокруг выражений, запускающих сопоставление образцов, переписывая, как это применимо, и запускается в окне оболочки с помощью hncurses. Когда ученики закончили последнюю загадку, они получают индивидуальный пароль, который им нужно отправить мне. Будучи ветеранами Windows и новичками Unix, и, конечно, (виртуозно) ленивыми, они склонны выбирать пароль и тип control-C. Это имеет непреднамеренный эффект прерывания программы и заставляет их пароль исчезать. Единственный способ восстановить это - повторить упражнение. Как жестоко!
Хотя есть другие способы, которыми я мог бы решить проблему (например, печатать предупреждающее сообщение или записывать пароль в файл), мне любопытно узнать, есть ли способ отключить управление-C.
Я знаю, что это несколько лет устарело, но вы должны быть способны сделать что-то вроде того, что предлагает Ingo из вашей программы, переконфигурируя терминал пользователя вместо установки блока сигналов. Это кажется мне самым чистым подходом. – dfeuer