We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent e26e90e commit 802b1cbCopy full SHA for 802b1cb
lib/irb/easter-egg.rb
@@ -109,7 +109,9 @@ def render_frame(i)
109
end
110
111
when :dancing
112
- begin
+ STDOUT.cooked do
113
+ interrupted = false
114
+ prev_trap = trap("SIGINT") { interrupted = true }
115
canvas = Canvas.new(Reline.get_screen_size)
116
Reline::IOGate.set_winch_handler do
117
@@ -125,10 +127,12 @@ def render_frame(i)
125
127
buff[0, 20] = "\e[0mPress Ctrl+C to stop\e[31m\e[1m"
126
128
print "\e[H" + buff
129
sleep 0.05
130
+ break if interrupted
131
132
rescue Interrupt
133
ensure
134
print "\e[0m\e[?1049l"
135
+ trap("SIGINT", prev_trap)
136
137
138
0 commit comments