Class: Karabiner::Key

Inherits:
Object
  • Object
show all
Defined in:
lib/karabiner/key.rb

Constant Summary collapse

KEYCODE_MAP =
{
  "0"      => "KEY_0",
  "1"      => "KEY_1",
  "2"      => "KEY_2",
  "3"      => "KEY_3",
  "4"      => "KEY_4",
  "5"      => "KEY_5",
  "6"      => "KEY_6",
  "7"      => "KEY_7",
  "8"      => "KEY_8",
  "9"      => "KEY_9",
  "Up"     => "CURSOR_UP",
  "Down"   => "CURSOR_DOWN",
  "Right"  => "CURSOR_RIGHT",
  "Left"   => "CURSOR_LEFT",
  "]"      => "BRACKET_RIGHT",
  "["      => "BRACKET_LEFT",
  ";"      => "SEMICOLON",
  "-"      => "MINUS",
  ","      => "COMMA",
  "."      => "DOT",
  "\\"     => "BACKSLASH",
  "/"      => "SLASH",
  "="      => "EQUAL",
  "'"      => "QUOTE",
  "`"      => "BACKQUOTE",
  "Ctrl_R" => "CONTROL_R",
  "Ctrl_L" => "CONTROL_L",
  "Opt_R"  => "OPTION_R",
  "Opt_L"  => "OPTION_L",
  "Cmd_R"  => "COMMAND_R",
  "Cmd_L"  => "COMMAND_L",
}.freeze
PREFIX_MAP =
{
  "C"     => "VK_CONTROL",
  "Ctrl"  => "VK_CONTROL",
  "Cmd"   => "VK_COMMAND",
  "Shift" => "VK_SHIFT",
  "M"     => "VK_OPTION",
  "Opt"   => "VK_OPTION",
}.freeze
PREFIX_EXPRESSION =
"(#{PREFIX_MAP.keys.map { |k| k + '-' }.join('|')})"

Instance Method Summary collapse

Constructor Details

#initialize(expression) ⇒ Key

Returns a new instance of Key.



45
46
47
# File 'lib/karabiner/key.rb', line 45

def initialize(expression)
  @expression = expression
end

Instance Method Details

#to_sObject



49
50
51
# File 'lib/karabiner/key.rb', line 49

def to_s
  key_combination(@expression)
end