class Utils::SearchUI

def getc

def getc
  system 'stty raw -echo'
  c = STDIN.getc
  system 'stty cooked echo'
  case c
  when "\x03", "\e"
    false
  when ?\r
    true
  when "\x7f"
    @answer.chop!
    nil
  when "\v"
    @answer.clear
    nil
  when /\A[\x00-\x1f]\z/
    nil
  else
    @answer << c
    nil
  end
end