From 489fd75fdfa279e82e92af73e3489ff012c4eef1 Mon Sep 17 00:00:00 2001 From: tmk Date: Fri, 5 Apr 2013 01:39:17 +0900 Subject: [PATCH] Fix keymap of gh60 --- common/action_code.h | 15 +++++++------ keyboard/gh60/keymap.c | 2 +- keyboard/gh60/keymap_plain.h | 3 +-- keyboard/gh60/keymap_poker.h | 28 +++++++++++------------- keyboard/gh60/keymap_poker_bit.h | 24 ++++++++++----------- keyboard/gh60/keymap_poker_set.h | 37 ++++++++++++++++---------------- 6 files changed, 52 insertions(+), 57 deletions(-) diff --git a/common/action_code.h b/common/action_code.h index 8ebcc833..0933dce1 100644 --- a/common/action_code.h +++ b/common/action_code.h @@ -40,7 +40,7 @@ along with this program. If not, see . * * Other Keys(01xx) * ---------------- - * ACT_USAGE(0100): + * ACT_USAGE(0100): TODO: Not needed? * 0100|00| usage(10) System control(0x80) - General Desktop page(0x01) * 0100|01| usage(10) Consumer control(0x01) - Consumer page(0x0C) * 0100|10| usage(10) (reserved) @@ -66,6 +66,7 @@ along with this program. If not, see . * ee: on event(00:default layer, 01:press, 10:release, 11:both) * * 1001|xxxx|xxxx xxxx (reserved) + * 1001|oopp|BBBB BBBB 8-bit Bitwise Operation??? * * ACT_LAYER_TAP(101x): * 101E|LLLL| keycode Invert with tap key @@ -240,8 +241,10 @@ enum layer_pram_tap_op { }; #define ACTION_LAYER_BITOP(op, part, bits, on) (ACT_LAYER<<12 | (op)<<10 | (on)<<8 | (part)<<5 | ((bits)&0x1f)) #define ACTION_LAYER_TAP(layer, key) (ACT_LAYER_TAP<<12 | (layer)<<8 | (key)) +/* Default Layer */ +#define ACTION_DEFAULT_LAYER_SET(layer) ACTION_DEFAULT_LAYER_BIT_SET((layer)/4, 1<<((layer)%4)) /* Layer Operation */ -#define ACTION_LAYER_CLEAR(on) ACTION_LAYER_AND(0x1f, (on)) +#define ACTION_LAYER_CLEAR(on) ACTION_LAYER_BIT_AND(0, 0, (on)) #define ACTION_LAYER_MOMENTARY(layer) ACTION_LAYER_ON_OFF(layer) #define ACTION_LAYER_TOGGLE(layer) ACTION_LAYER_INVERT(layer, ON_RELEASE) #define ACTION_LAYER_INVERT(layer, on) ACTION_LAYER_BIT_XOR((layer)/4, 1<<((layer)%4), (on)) @@ -251,21 +254,19 @@ enum layer_pram_tap_op { #define ACTION_LAYER_ON_OFF(layer) ACTION_LAYER_TAP((layer), OP_ON_OFF) #define ACTION_LAYER_OFF_ON(layer) ACTION_LAYER_TAP((layer), OP_OFF_ON) #define ACTION_LAYER_SET_CLEAR(layer) ACTION_LAYER_TAP((layer), OP_SET_CLEAR) +/* With Tapping */ +#define ACTION_LAYER_TAP_KEY(layer, key) ACTION_LAYER_TAP((layer), (key)) +#define ACTION_LAYER_TAP_TOGGLE(layer) ACTION_LAYER_TAP((layer), OP_TAP_TOGGLE) /* Bitwise Operation */ #define ACTION_LAYER_BIT_AND(part, bits, on) ACTION_LAYER_BITOP(OP_BIT_AND, (part), (bits), (on)) #define ACTION_LAYER_BIT_OR( part, bits, on) ACTION_LAYER_BITOP(OP_BIT_OR, (part), (bits), (on)) #define ACTION_LAYER_BIT_XOR(part, bits, on) ACTION_LAYER_BITOP(OP_BIT_XOR, (part), (bits), (on)) #define ACTION_LAYER_BIT_SET(part, bits, on) ACTION_LAYER_BITOP(OP_BIT_SET, (part), (bits), (on)) -/* Default Layer */ -#define ACTION_DEFAULT_LAYER_SET(layer) ACTION_DEFAULT_LAYER_BIT_SET((layer)/4, 1<<((layer)%4)) /* Default Layer Bitwise Operation */ #define ACTION_DEFAULT_LAYER_BIT_AND(part, bits) ACTION_LAYER_BITOP(OP_BIT_AND, (part), (bits), 0) #define ACTION_DEFAULT_LAYER_BIT_OR( part, bits) ACTION_LAYER_BITOP(OP_BIT_OR, (part), (bits), 0) #define ACTION_DEFAULT_LAYER_BIT_XOR(part, bits) ACTION_LAYER_BITOP(OP_BIT_XOR, (part), (bits), 0) #define ACTION_DEFAULT_LAYER_BIT_SET(part, bits) ACTION_LAYER_BITOP(OP_BIT_SET, (part), (bits), 0) -/* With Tapping */ -#define ACTION_LAYER_TAP_KEY(layer, key) ACTION_LAYER_TAP((layer), (key)) -#define ACTION_LAYER_TAP_TOGGLE(layer) ACTION_LAYER_TAP((layer), OP_TAP_TOGGLE) /* diff --git a/keyboard/gh60/keymap.c b/keyboard/gh60/keymap.c index 6db4d3db..edc1caf1 100644 --- a/keyboard/gh60/keymap.c +++ b/keyboard/gh60/keymap.c @@ -210,7 +210,7 @@ static const uint16_t PROGMEM fn_actions[] = { [6] = ACTION_DEFAULT_LAYER_SET(1), // set colemak layout [7] = ACTION_DEFAULT_LAYER_SET(2), // set dvorak layout [8] = ACTION_DEFAULT_LAYER_SET(3), // set workman layout - [9] = ACTION_RMOD_TAP_KEY(KC_RSFT, KC_GRV), + [9] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_GRV), }; #endif diff --git a/keyboard/gh60/keymap_plain.h b/keyboard/gh60/keymap_plain.h index 85331715..52d11256 100644 --- a/keyboard/gh60/keymap_plain.h +++ b/keyboard/gh60/keymap_plain.h @@ -1,10 +1,9 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* Keymap 0: qwerty */ + /* 0: qwerty */ KEYMAP(ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \ TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, \ CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT,NO, ENT, \ LSFT,NO, Z, X, C, V, B, N, M, COMM,DOT, SLSH,NO, RSFT, \ LCTL,LGUI,LALT, SPC, RALT,RGUI,APP, RCTL), }; -static const uint8_t PROGMEM overlays[][MATRIX_ROWS][MATRIX_COLS] = {}; static const uint16_t PROGMEM fn_actions[] = {}; diff --git a/keyboard/gh60/keymap_poker.h b/keyboard/gh60/keymap_poker.h index 3e0921ad..16429994 100644 --- a/keyboard/gh60/keymap_poker.h +++ b/keyboard/gh60/keymap_poker.h @@ -1,49 +1,47 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* Keymap 0: qwerty */ + /* 0: qwerty */ KEYMAP_ANSI( GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \ TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, \ CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, \ LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RSFT, \ LCTL,LGUI,LALT, SPC, FN0, RGUI,APP, RCTL), - /* Keymap 1: colemak */ + /* 1: colemak */ KEYMAP_ANSI( GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \ TAB, Q, W, F, P, G, J, L, U, Y, SCLN,LBRC,RBRC,BSLS, \ BSPC,A, R, S, T, D, H, N, E, I, O, QUOT, ENT, \ LSFT,Z, X, C, V, B, K, M, COMM,DOT, SLSH, RSFT, \ LCTL,LGUI,LALT, SPC, FN0, RGUI,APP, RCTL), - /* Keymap 2: dvorak */ + /* 2: dvorak */ KEYMAP_ANSI( GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, LBRC,RBRC,BSPC, \ TAB, QUOT,COMM,DOT, P, Y, F, G, C, R, L, SLSH,EQL, BSLS, \ CAPS,A, O, E, U, I, D, H, T, N, S, MINS, ENT, \ LSFT,SCLN,Q, J, K, X, B, M, W, V, Z, RSFT, \ LCTL,LGUI,LALT, SPC, FN0, RGUI,APP, RCTL), - /* Keymap: workman */ + /* 3: workman */ KEYMAP_ANSI( GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \ TAB, Q, D, R, W, B, J, F, U, P, SCLN,LBRC,RBRC,BSLS, \ BSPC,A, S, H, T, G, Y, N, E, O, I, QUOT, ENT, \ LSFT,Z, X, M, C, V, K, L, COMM,DOT, SLSH, RSFT, \ LCTL,LGUI,LALT, SPC, FN0, RGUI,APP, RCTL), -}; -static const uint8_t PROGMEM overlays[][MATRIX_ROWS][MATRIX_COLS] = { - /* Overlay 0: Poker with Arrow */ + /* 4: Poker with Arrow */ KEYMAP_ANSI( TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, UP, \ TRNS,TRNS,TRNS, TRNS, TRNS,LEFT,DOWN,RGHT), - /* Overlay 1: Poker with Esc */ + /* 5: Poker with Esc */ KEYMAP_ANSI( ESC, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \ TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS,TRNS), - /* Overlay 2: Poker Fn + /* 6: Poker Fn * ,-----------------------------------------------------------. * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| | * |-----------------------------------------------------------| @@ -66,7 +64,7 @@ static const uint8_t PROGMEM overlays[][MATRIX_ROWS][MATRIX_COLS] = { TRNS,LEFT,DOWN,RGHT,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,FN3, END, TRNS, \ TRNS,DEL, TRNS,WHOM,MUTE,VOLU,VOLD,TRNS,PGUP,PGDN,DEL, TRNS, \ TRNS,TRNS,TRNS, FN1, TRNS,TRNS,TRNS,TRNS), - /* Overlay 3: Layout selector + /* 7: Layout selector * ,-----------------------------------------------------------. * | Lq| Lc| Ld| Lw| | | | | | | | | | | * |-----------------------------------------------------------| @@ -92,11 +90,11 @@ static const uint8_t PROGMEM overlays[][MATRIX_ROWS][MATRIX_COLS] = { }; static const uint16_t PROGMEM fn_actions[] = { /* Poker Layout */ - [0] = ACTION_OVERLAY_MOMENTARY(2), // to Fn overlay - [1] = ACTION_OVERLAY_TOGGLE(0), // toggle arrow overlay - [2] = ACTION_OVERLAY_TOGGLE(1), // toggle Esc overlay - [3] = ACTION_RMODS_KEY(MOD_BIT(KC_RCTL)|MOD_BIT(KC_RSFT), KC_ESC), // Task(RControl,RShift+Esc) - [4] = ACTION_OVERLAY_MOMENTARY(3), // to Layout selector + [0] = ACTION_LAYER_MOMENTARY(6), // to Fn overlay + [1] = ACTION_LAYER_TOGGLE(4), // toggle arrow overlay + [2] = ACTION_LAYER_TOGGLE(5), // toggle Esc overlay + [3] = ACTION_MODS_KEY(MOD_RCTL|MOD_RSFT, KC_ESC), // Task(RControl,RShift+Esc) + [4] = ACTION_LAYER_MOMENTARY(7), // to Layout selector [5] = ACTION_DEFAULT_LAYER_SET(0), // set qwerty layout [6] = ACTION_DEFAULT_LAYER_SET(1), // set colemak layout [7] = ACTION_DEFAULT_LAYER_SET(2), // set dvorak layout diff --git a/keyboard/gh60/keymap_poker_bit.h b/keyboard/gh60/keymap_poker_bit.h index 982632d0..1b498351 100644 --- a/keyboard/gh60/keymap_poker_bit.h +++ b/keyboard/gh60/keymap_poker_bit.h @@ -2,37 +2,35 @@ // Fn + Esc = ` // Fn + {left, down, up, right} = {home, pgdown, pgup, end} static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* Keymap 0: qwerty */ + /* 0: qwerty */ KEYMAP_ANSI( GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \ TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, \ LCTL,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, \ LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RSFT, \ LCTL,LGUI,LALT, SPC, FN0, RGUI,APP, RCTL), -}; -static const uint8_t PROGMEM overlays[][MATRIX_ROWS][MATRIX_COLS] = { - /* Overlay 0: Poker Default + Fn'd */ - KEYMAP_ANSI( + /* 4: Poker Default + Fn'd */ + [4] = KEYMAP_ANSI( TRNS,F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, \ CAPS,FN2, UP, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,CALC,TRNS,HOME,INS, TRNS, \ TRNS,LEFT,DOWN,RGHT,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,FN4, END, TRNS, \ TRNS,DEL, TRNS,WHOM,MUTE,VOLU,VOLD,TRNS,PGUP,PGDN,DEL, TRNS, \ TRNS,TRNS,TRNS, FN1, TRNS,TRNS,TRNS,TRNS), - /* Overlay 1: Poker with Arrow */ + /* 5: Poker with Arrow */ KEYMAP_ANSI( TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, PGUP, \ TRNS,TRNS,TRNS, TRNS, FN3, HOME,PGDN,END), - /* Overlay 2: Poker with Esc */ + /* 6: Poker with Esc */ KEYMAP_ANSI( ESC, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \ TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS,TRNS), - /* Overlay 3: Poker with Arrow + Fn'd */ + /* 7: Poker with Arrow + Fn'd */ KEYMAP_ANSI( TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ @@ -42,9 +40,9 @@ static const uint8_t PROGMEM overlays[][MATRIX_ROWS][MATRIX_COLS] = { }; static const uint16_t PROGMEM fn_actions[] = { /* Poker Layout */ - [0] = ACTION_OVERLAY_INV4(0b0101, 0), // Poker Fn(with fix for Esc) - [1] = ACTION_OVERLAY_TOGGLE(1), // Poker Arrow toggle - [2] = ACTION_OVERLAY_TOGGLE(2), // Poker Esc toggle - [3] = ACTION_OVERLAY_INV4(0b1101, 0), // Poker Fn(with fix for Arrow) - [4] = ACTION_RMODS_KEY(MOD_BIT(KC_RCTL)|MOD_BIT(KC_RSFT), KC_ESC), // FN3 Task(RControl,RShift+Esc) + [0] = ACTION_LAYER_BIT_XOR(1, 0b0101, ON_BOTH), // Poker Fn(with fix for Esc) + [1] = ACTION_LAYER_TOGGLE(5), // Poker Arrow toggle + [2] = ACTION_LAYER_TOGGLE(6), // Poker Esc toggle + [3] = ACTION_LAYER_BIT_XOR(1, 0b1101, ON_BOTH), // Poker Fn(with fix for Arrow) + [4] = ACTION_MODS_KEY(MOD_RCTL|MOD_RSFT, KC_ESC), // FN3 Task(RControl,RShift+Esc) }; diff --git a/keyboard/gh60/keymap_poker_set.h b/keyboard/gh60/keymap_poker_set.h index eaaf3159..e1e4d80e 100644 --- a/keyboard/gh60/keymap_poker_set.h +++ b/keyboard/gh60/keymap_poker_set.h @@ -2,58 +2,56 @@ // Fn + Esc = ` // Fn + {left, down, up, right} = {home, pgdown, pgup, end} static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* Keymap 0: qwerty */ + /* 0: qwerty */ KEYMAP_ANSI( GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \ TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, \ LCTL,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, \ LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RSFT, \ LCTL,LGUI,LALT, SPC, FN0, RGUI,APP, RCTL), -}; -static const uint8_t PROGMEM overlays[][MATRIX_ROWS][MATRIX_COLS] = { - /* Overlay 0: Poker with Arrow */ + /* 1: Poker with Arrow */ KEYMAP_ANSI( TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, UP, \ TRNS,TRNS,TRNS, TRNS, FN1, LEFT,DOWN,RGHT), - /* Overlay 1: Poker with Esc */ + /* 2: Poker with Esc */ KEYMAP_ANSI( ESC, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \ TRNS,TRNS,TRNS, TRNS, FN2, TRNS,TRNS,TRNS), - /* Overlay 2: Poker with Arrow and Esc */ + /* 3: Poker with Arrow and Esc */ KEYMAP_ANSI( ESC, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, UP, \ TRNS,TRNS,TRNS, TRNS, FN3, LEFT,DOWN,RGHT), - /* Overlay 3: Poker Fn'd */ + /* 4: Poker Fn'd */ KEYMAP_ANSI( ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, \ TRNS,FN6, UP, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,CALC,TRNS,HOME,INS, TRNS, \ TRNS,LEFT,DOWN,RGHT,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,FN8, END, TRNS, \ TRNS,DEL, TRNS,WHOM,MUTE,VOLU,VOLD,TRNS,PGUP,PGDN,DEL, TRNS, \ TRNS,TRNS,TRNS, FN5, FN4, TRNS,TRNS,TRNS), - /* Overlay 4: Poker Fn'd arrow */ + /* 5: Poker Fn'd arrow */ KEYMAP_ANSI( ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, \ TRNS,FN7, UP, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,CALC,TRNS,HOME,INS, TRNS, \ TRNS,LEFT,DOWN,RGHT,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,FN8, END, TRNS, \ TRNS,DEL, TRNS,WHOM,MUTE,VOLU,VOLD,TRNS,PGUP,PGDN,DEL, PGUP, \ TRNS,TRNS,TRNS, FN4, FN5, HOME,PGDN,END), - /* Overlay 5: Poker Fn'd Esc */ + /* 6: Poker Fn'd Esc */ KEYMAP_ANSI( GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, \ TRNS,FN4, UP, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,CALC,TRNS,HOME,INS, TRNS, \ TRNS,LEFT,DOWN,RGHT,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,FN8, END, TRNS, \ TRNS,DEL, TRNS,WHOM,MUTE,VOLU,VOLD,TRNS,PGUP,PGDN,DEL, TRNS, \ TRNS,TRNS,TRNS, FN7, FN6, TRNS,TRNS,TRNS), - /* Overlay 6: Poker Fn'd Arrow + Esc */ + /* 7: Poker Fn'd Arrow + Esc */ KEYMAP_ANSI( GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, \ TRNS,FN5, UP, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,CALC,TRNS,HOME,INS, TRNS, \ @@ -67,15 +65,16 @@ static const uint8_t PROGMEM overlays[][MATRIX_ROWS][MATRIX_COLS] = { */ static const uint16_t PROGMEM fn_actions[] = { /* Poker Layout */ - [0] = ACTION_OVERLAY_SET(3, ON_PRESS), // FN0 move to Fn'd when press - [1] = ACTION_OVERLAY_SET(4, ON_PRESS), // FN1 move to Fn'd arrow when press - [2] = ACTION_OVERLAY_SET(5, ON_PRESS), // FN2 move to Fn'd Esc when press - [3] = ACTION_OVERLAY_SET(6, ON_PRESS), // FN3 move to Fn'd arrow + Esc when press + [0] = ACTION_LAYER_SET(4, ON_PRESS), // FN0 move to Fn'd when press + [1] = ACTION_LAYER_SET(5, ON_PRESS), // FN1 move to Fn'd arrow when press + [2] = ACTION_LAYER_SET(6, ON_PRESS), // FN2 move to Fn'd Esc when press + [3] = ACTION_LAYER_SET(7, ON_PRESS), // FN3 move to Fn'd arrow + Esc when press - [4] = ACTION_OVERLAY_CLEAR(ON_RELEASE), // FN4 clear overlay when release - [5] = ACTION_OVERLAY_SET(0, ON_RELEASE), // FN5 move to arrow when release - [6] = ACTION_OVERLAY_SET(1, ON_RELEASE), // FN6 move to Esc when release - [7] = ACTION_OVERLAY_SET(2, ON_RELEASE), // FN7 move to arrow + Esc when release + //[4] = ACTION_LAYER_CLEAR(ON_RELEASE), // FN4 clear overlay when release + [4] = ACTION_LAYER_SET(0, ON_RELEASE), // FN4 clear overlay when release + [5] = ACTION_LAYER_SET(1, ON_RELEASE), // FN5 move to arrow when release + [6] = ACTION_LAYER_SET(2, ON_RELEASE), // FN6 move to Esc when release + [7] = ACTION_LAYER_SET(3, ON_RELEASE), // FN7 move to arrow + Esc when release - [8] = ACTION_RMODS_KEY(MOD_BIT(KC_RCTL)|MOD_BIT(KC_RSFT), KC_ESC), // FN8 Task(RControl,RShift+Esc) + [8] = ACTION_MODS_KEY(MOD_RCTL|MOD_RSFT, KC_ESC), // FN8 Task(RControl,RShift+Esc) }; -- 2.39.3