Sha256: 2b04c3f0e26886bba6bf44e2a20ac70f2dee2e143021e39415c0c91eb94b0ff0

Contents?: true

Size: 475 Bytes

Versions: 1

Compression:

Stored size: 475 Bytes

Contents

require "io/console"
require "keyevent/version"

module Keyevent
  CR = "\r"
  LF = "\n"
  DEL = "\u007F"
  EOT = "\u0004"
  ESC = "\e"
  ETX = "\u0003"
  SUB = "\u001A"
  TAB = "\t"
  SPACE = " "

  UP = "\e[A"
  DOWN = "\e[B"
  LEFT = "\e[D"
  RIGHT = "\e[C"
end

module Kernel
  def getkey
    input = STDIN.getch

    if input == Keyevent::ESC
      input << STDIN.read_nonblock(3) rescue nil
      input << STDIN.read_nonblock(2) rescue nil
    end

    input
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
keyevent-1.0.0 lib/keyevent.rb