module Diakonos::Keying
Constants
- KEYSTRINGS
- UTF_8_2_BYTE_BEGIN
- UTF_8_2_BYTE_END
- UTF_8_3_BYTE_BEGIN
- UTF_8_3_BYTE_END
- UTF_8_4_BYTE_BEGIN
- UTF_8_4_BYTE_END
Public Class Methods
key_string_for( num )
click to toggle source
# File lib/diakonos/keying.rb, line 110 def self.key_string_for( num ) retval = KEYSTRINGS[ num ] if retval.nil? retval = case num when Curses::KEY_DOWN "down" when Curses::KEY_UP "up" when Curses::KEY_LEFT "left" when Curses::KEY_RIGHT "right" when Curses::KEY_HOME "home" when Curses::KEY_END "end" when Curses::KEY_IC "insert" when Curses::KEY_DC "delete" when Curses::KEY_PPAGE "page-up" when Curses::KEY_NPAGE "page-down" when Curses::KEY_A1 "numpad7" when Curses::KEY_A3 "numpad9" when Curses::KEY_B2 "numpad5" when Curses::KEY_C1 "numpad1" when Curses::KEY_C3 "numpad3" when Curses::KEY_FIND "find" when Curses::KEY_SELECT "select" when Curses::KEY_SUSPEND "suspend" when Curses::KEY_F0..(Curses::KEY_F0 + 24) "f" + ( num - Curses::KEY_F0 ).to_s when CTRL_H "ctrl+h" when Curses::KEY_RESIZE "resize" when RESIZE2 "resize2" end end if retval.nil? && num.class == Integer retval = "keycode#{num}" end retval end
keycodes_for( str )
click to toggle source
# File lib/diakonos/keying.rb, line 42 def self.keycodes_for( str ) retval = case str.downcase when "down" Curses::KEY_DOWN when "up" Curses::KEY_UP when "left" Curses::KEY_LEFT when "right" Curses::KEY_RIGHT when "home" Curses::KEY_HOME when "end" Curses::KEY_END when "insert", "ins" Curses::KEY_IC when "delete", "del" Curses::KEY_DC when "backspace" ::Diakonos::BACKSPACE when "tab" 9 when "pageup", "page-up" Curses::KEY_PPAGE when "pagedown", "page-down" Curses::KEY_NPAGE when "enter", "return" ::Diakonos::ENTER when "numpad7", "keypad7", "kp-7" Curses::KEY_A1 when "numpad9", "keypad9", "kp-9" Curses::KEY_A3 when "numpad5", "keypad5", "kp-5" Curses::KEY_B2 when "numpad1", "keypad1", "kp-1" Curses::KEY_C1 when "numpad3", "keypad3", "kp-3" Curses::KEY_C3 when "escape", "esc" ::Diakonos::ESCAPE when "space" 32 when "ctrl+space" 0 when "find" Curses::KEY_FIND when "select" Curses::KEY_SELECT when "suspend" Curses::KEY_SUSPEND when /^f(\d\d?)$/ Curses::KEY_F0 + $1.to_i when /^ctrl\+[a-gi-z]$/ str.downcase[ -1 ].ord - 96 when /^ctrl\+h$/ ::Diakonos::CTRL_H when /^alt\+(.)$/ [ ::Diakonos::ESCAPE, $1[ 0 ].ord ] when /^ctrl\+alt\+(.)$/, /^alt\+ctrl\+(.)$/ [ ::Diakonos::ESCAPE, str.downcase[ -1 ].ord - 96 ] when /^keycode(\d+)$/ $1.to_i when /^.$/ str[ 0 ].ord end Array( retval ) end