Module: Ursa::Packages::SystemEvents

Included in:
ITerm
Defined in:
lib/ursa/packages/system_events.rb

Instance Method Summary collapse

Instance Method Details

#parse_key(key_block) ⇒ Object



35
36
37
38
39
40
# File 'lib/ursa/packages/system_events.rb', line 35

def parse_key(key_block)
  dsl = KeyDSL.new(self)
  dsl.instance_eval &key_block

  [dsl.normal_keys, dsl.special_keys]
end

#press_keys(&key_block) ⇒ Object



26
27
28
29
30
31
32
33
# File 'lib/ursa/packages/system_events.rb', line 26

def press_keys(&key_block)
  codes, modifiers = parse_key(key_block)

  if codes.size == 1
    code = codes.first
    tell app('System Events'), send_key(code, modifiers)
  end
end