# File lib/luck/ansi.rb, line 195 def prepare_modes buf = [0, 0, 0, 0, 0, 0, ''].pack("IIIICCA*") $stdout.ioctl(TCGETS, buf) @old_modes = buf.unpack("IIIICCA*") new_modes = @old_modes.clone new_modes[3] &= ~ECHO # echo off new_modes[3] &= ~ICANON # one char @ a time $stdout.ioctl(TCSETS, new_modes.pack("IIIICCA*")) print "\e[2J" # clear screen print "\e[H" # go home print "\e[?47h" # kick xterm into the alt screen print "\e[?1000h" # kindly ask for mouse positions to make up for it self.cursor = false flush end