Подтвердить что ты не робот

Ruby - Скрыть "^ C" на прерывании

В Ruby у меня есть следующее:

# Trap Interrupts
trap("INT") do
    puts "Shutting down..."
    exit
end

Когда я прерываю программу, печатается следующее (Mac OSX Lion):

^ Сбрасывание вниз...

Есть ли способ скрыть ^C из Ruby?

4b9b3361

Ответ 1

Являются ли управляющие символы эхом, является свойством tty, который вы используете. stty -echoctl - это способ Unix отключить эхо-контроль управляющих символов. Вы можете запустить эту команду из своего Ruby script и добиться такого же эффекта, если вы используете систему Unix-ish.

Ответ 2

Я обнаружил, что в моих программах Python на терминалах Linux и Mac OS X я могу скрыть ^ C, запустив сообщение с возвратом каретки (\ r). Это похоже на хак, но все работает отлично.