combo layer test

This commit is contained in:
Stefan Dorn 2016-07-20 22:32:15 +01:00
parent 11b79bcc8c
commit b929617dae
2 changed files with 55 additions and 48 deletions

View file

@ -30,19 +30,26 @@ class Key
Layers = [ :basic, :punc, :nav, :func ]
Functions = {
# down up
"basic" => [ "&kbfun_normal_press_release", ],
"media" => [ "&kbfun_mediakey_press_release", ],
# down up
"mod" => [ "&kbfun_modifier_press_release", ],
"sticky_mod" => [ "&kbfun_modifier_sticky", ],
# down up
"layer" => [ "&kbfun_layer_press_release", ],
"sticky" => [ "&kbfun_layer_sticky", ],
# down up
"shifted" => [ "&kbfun_shift_press_release", ],
"ctrled" => [ "&kbfun_control_press_release", ],
"capslock" => [ "&kbfun_capslock_press_release", ],
# down up
"basic" => [ "&kbfun_normal_press_release", ],
"media" => [ "&kbfun_mediakey_press_release", ],
# down up
"mod" => [ "&kbfun_modifier_press_release", ],
"sticky_mod" => [ "&kbfun_modifier_sticky", ],
# down up
"layer" => [ "&kbfun_layer_press_release", ],
"sticky" => [ "&kbfun_layer_sticky", ],
# down up
"shift" => [ "&kbfun_shift_press_release", ],
"ctrl" => [ "&kbfun_control_press_release", ],
"alt" => [ "&kbfun_alt_press_release", ],
"win" => [ "&kbfun_win_press_release", ],
"shift_layer" => [ "&kbfun_shift_layer_press_release", ],
"ctrl_layer" => [ "&kbfun_control_layer_press_release", ],
"alt_layer" => [ "&kbfun_alt_layer_press_release", ],
"win_layer" => [ "&kbfun_win_layer_press_release", ],
# down up
"capslock" => [ "&kbfun_capslock_press_release", ],
}
Keys = {
@ -110,8 +117,8 @@ class Key
"f24" => "KEY_F24",
#
"\\" => "KEY_Backslash_Pipe",
"{" => ["KEY_LeftBracket_LeftBrace", "shifted"],
"}" => ["KEY_RightBracket_RightBrace", "shifted"],
"{" => ["KEY_LeftBracket_LeftBrace", "shift"],
"}" => ["KEY_RightBracket_RightBrace", "shift"],
"[" => "KEY_LeftBracket_LeftBrace",
"]" => "KEY_RightBracket_RightBrace",
"," => "KEY_Comma_LessThan",
@ -122,25 +129,25 @@ class Key
"\'" => "KEY_SingleQuote_DoubleQuote",
";" => "KEY_Semicolon_Colon",
"/" => "KEY_Slash_Question",
"~" => ["KEY_GraveAccent_Tilde", "shifted"],
"%" => ["KEY_5_Percent", "shifted"],
"*" => ["KEY_8_Asterisk", "shifted"],
":" => ["KEY_Semicolon_Colon", "shifted"],
"^" => ["KEY_6_Caret", "shifted"],
"<" => ["KEY_Comma_LessThan", "shifted"],
">" => ["KEY_Period_GreaterThan", "shifted"],
"?" => ["KEY_Slash_Question", "shifted"],
"!" => ["KEY_1_Exclamation", "shifted"],
"(" => ["KEY_9_LeftParenthesis", "shifted"],
")" => ["KEY_0_RightParenthesis", "shifted"],
"|" => ["KEY_Backslash_Pipe", "shifted"],
"@" => ["KEY_2_At", "shifted"],
"\"" => ["KEY_SingleQuote_DoubleQuote", "shifted"],
"_" => ["KEY_Dash_Underscore", "shifted"],
"+" => ["KEY_Equal_Plus", "shifted"],
"$" => ["KEY_4_Dollar", "shifted"],
"&" => ["KEY_7_Ampersand", "shifted"],
"#" => ["KEY_3_Pound", "shifted"],
"~" => ["KEY_GraveAccent_Tilde", "shift"],
"%" => ["KEY_5_Percent", "shift"],
"*" => ["KEY_8_Asterisk", "shift"],
":" => ["KEY_Semicolon_Colon", "shift"],
"^" => ["KEY_6_Caret", "shift"],
"<" => ["KEY_Comma_LessThan", "shift"],
">" => ["KEY_Period_GreaterThan", "shift"],
"?" => ["KEY_Slash_Question", "shift"],
"!" => ["KEY_1_Exclamation", "shift"],
"(" => ["KEY_9_LeftParenthesis", "shift"],
")" => ["KEY_0_RightParenthesis", "shift"],
"|" => ["KEY_Backslash_Pipe", "shift"],
"@" => ["KEY_2_At", "shift"],
"\"" => ["KEY_SingleQuote_DoubleQuote", "shift"],
"_" => ["KEY_Dash_Underscore", "shift"],
"+" => ["KEY_Equal_Plus", "shift"],
"$" => ["KEY_4_Dollar", "shift"],
"&" => ["KEY_7_Ampersand", "shift"],
"#" => ["KEY_3_Pound", "shift"],
#
"enter" => "KEY_ReturnEnter",
"return" => "KEY_ReturnEnter",
@ -217,7 +224,7 @@ class Key
up, down = Functions[type]
down ||= up
raise "overwriting shifted key: #{key}, #{type}" if default_type == "shifted" and type != default_type
raise "overwriting shift key: #{key}, #{type}" if default_type == "shift" and type != default_type
raise "key not found: #{key}" if keycode.nil?
raise "type not found: #{type}" if up.nil? or down.nil?
@ -389,8 +396,8 @@ keys = [
%w{ right }, %w{ }, %w{ }, %w{ },
# thumb-top
# letter type punc type nav type func type
%w{ punc }, %w{ }, %w{ func }, %w{ },
%w{ nav }, %w{ func }, %w{ }, %w{ },
%w{ func }, %w{ }, %w{ }, %w{ },
%w{ func ctrl_layer }, %w{ }, %w{ }, %w{ },
# thumb-double
# letter type punc type nav type func type
%w{ menu }, %w{ }, %w{ }, %w{ },

View file

@ -77,8 +77,8 @@ static const keycode PROGMEM _kb_layout[KB_LAYERS][KB_ROWS][KB_COLUMNS]
(keycode) KEY_UpArrow,
(keycode) KEY_DownArrow,
(keycode) KEY_RightArrow,
(keycode) 1,
(keycode) 2,
(keycode) 3,
(keycode) 3,
(keycode) KEY_Application,
(keycode) 3,
(keycode) 1,
@ -160,7 +160,7 @@ KB_MATRIX_LAYER(
(keycode) KEY_UpArrow,
(keycode) KEY_DownArrow,
(keycode) KEY_RightArrow,
(keycode) 1,
(keycode) 3,
(keycode) 3,
(keycode) KEY_Application,
(keycode) 3,
@ -410,7 +410,7 @@ static const keyfunc PROGMEM _kb_layout_press[KB_LAYERS][KB_ROWS][KB_COLUMNS]
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_control_layer_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_layer_sticky,
@ -493,7 +493,7 @@ KB_MATRIX_LAYER(
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_control_layer_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_layer_press_release,
@ -576,7 +576,7 @@ KB_MATRIX_LAYER(
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_control_layer_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_normal_press_release,
@ -659,7 +659,7 @@ KB_MATRIX_LAYER(
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_control_layer_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_normal_press_release,
@ -742,7 +742,7 @@ static const keyfunc PROGMEM _kb_layout_release[KB_LAYERS][KB_ROWS][KB_COLUMNS]
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_control_layer_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_layer_sticky,
@ -825,7 +825,7 @@ KB_MATRIX_LAYER(
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_control_layer_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_layer_press_release,
@ -908,7 +908,7 @@ KB_MATRIX_LAYER(
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_control_layer_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_normal_press_release,
@ -991,7 +991,7 @@ KB_MATRIX_LAYER(
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_control_layer_press_release,
(keyfunc) &kbfun_normal_press_release,
(keyfunc) &kbfun_layer_press_release,
(keyfunc) &kbfun_normal_press_release,