class TTY::Reader::KeyEvent
Represents key event emitted during keyboard press
@api public
Public Class Methods
from(keys, char, line = "")
click to toggle source
@param [Hash] keys
the keys and codes mapping
@param [Array] codes
@return [KeyEvent]
@api public
# File lib/tty/reader/key_event.rb, line 28 def self.from(keys, char, line = "") key = Key.new key.name = (name = keys[char]) ? name : :ignore case char when proc { |c| c =~ /^[a-z]{1}$/ } key.name = :alpha when proc { |c| c =~ /^[A-Z]{1}$/ } key.name = :alpha key.shift = true when proc { |c| c =~ /^\d+$/ } key.name = :num when proc { |cs| !Keys.ctrl_keys[cs].nil? } key.ctrl = true end new(key, char, line) end
Public Instance Methods
trigger?()
click to toggle source
Check if key event can be triggered
@return [Boolean]
@api public
# File lib/tty/reader/key_event.rb, line 52 def trigger? !key.nil? && !key.name.nil? end