Skip to content

Commit

Permalink
Use TapDance to switch to gaming mode
Browse files Browse the repository at this point in the history
* Also cleaned up some of the old comments
  • Loading branch information
jeffreykxiao committed Sep 15, 2018
1 parent f10a53f commit ea5db22
Showing 1 changed file with 55 additions and 62 deletions.
117 changes: 55 additions & 62 deletions keyboards/iris/keymaps/jeffx/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ extern keymap_config_t keymap_config;
#define _GM 1
#define _LW 2
#define _RS 3
#define _FN 4
#define _GF 4
#define _FN 5

enum custom_keycodes {
QWERTY = SAFE_RANGE,
Expand All @@ -18,13 +19,15 @@ enum custom_keycodes {

//Tap Dance Declarations
enum {
TD_TEST= 0
TD_HOME= 0,
TD_GAME= 1
};

//Tap Dance Definitions
qk_tap_dance_action_t tap_dance_actions[] = {
//Tap once for Esc, twice for Caps Lock
[TD_TEST] = ACTION_TAP_DANCE_DOUBLE(KC_MPLY, KC_MNXT)
[TD_HOME] = ACTION_TAP_DANCE_DUAL_ROLE(KC_RGUI, _QW),
[TD_GAME] = ACTION_TAP_DANCE_DUAL_ROLE(KC_RGUI, _GM)
// Other declarations would go here, separated by commas, if you have them
};

Expand All @@ -34,52 +37,19 @@ qk_tap_dance_action_t tap_dance_actions[] = {
#define LM_FNOS LM(_FN, MOD_BIT(KC_LGUI))
#define ALT_FN LM(_FN, MOD_BIT(KC_LALT))

bool fn_held;
void dance_layers(qk_tap_dance_state_t *state, void *user_data)
{
if (state->pressed)
{
layer_on(_LW);
fn_held = true;
}
switch (state->count)
{
case 1: //off all layers, just base on
if (!state->pressed)
{
layer_off(_LW);
layer_off(_FN);
fn_held = false;
}
break;
case 2: //function layer on
layer_on(_FN);
layer_off(_LW);
break;
}
}
void dance_layers_finish(qk_tap_dance_state_t *state, void *user_data)
{
if (fn_held)
{
layer_off(_LW);
fn_held = false;
}
}

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

/* QWERTY
/* QWERTY // Default layer - occasionally 'swaps' with Gaming layer
* .-----------------------------------------------------. .-----------------------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BACKSP |
* |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+-----------------|
* | TAB | Q | W | E | R | T | | Y | U | I | O | P | DEL |
* |--------+--------+--------+--------+--------+--------| |--------+--------+--------+-----------------+--------|
* | LCTRL | A | S | D | F | G | | H | J | K | L | ; | ENTER |
* |--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------------------------+--------|
* | LSHIFT | Z | X | C | V | B | PLAY | | DIRECT | N | M | , | . | / | RSHIFT |
* | LSHIFT | Z | X | C | V | B | PLAY | | FUNC | N | M | , | . | / | RSHIFT |
* '-----------------------------------+--------+--------+--------| |--------+--------+--------+-----------------------------------'
* | OS/FN | ALT | SPACE | | LOWER | RAISE | FUNC |
* | OS/FN | ALT | SPACE | | LOWER | RAISE | OS/_GM |
* '--------------------------' '--------------------------'
*/

Expand All @@ -88,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL ,
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT ,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MPLY, MO(_FN), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT ,
KC_LGUI, ALT_FN, KC_SPC, MO(_LW), MO(_RS), MO(_FN)
KC_LGUI, ALT_FN, KC_SPC, MO(_LW), MO(_RS), TD(TD_GAME)
),


Expand All @@ -100,9 +70,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+--------+--------+--------+--------+--------| |--------+--------+--------+-----------------+--------|
* | LCTRL | A | S | D | F | G | | H | J | K | L | ; | ENTER |
* |--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------------------------+--------|
* | LSHIFT | Z | X | C | V | B | PLAY | | DIRECT | N | M | , | . | / | RSHIFT |
* | LSHIFT | Z | X | C | V | B | PLAY | | FUNC | N | M | , | . | / | RSHIFT |
* '-----------------------------------+--------+--------+--------| |--------+--------+--------+-----------------------------------'
* | FUNC | ALT | SPACE | | LOWER | RAISE | FUNC |
* | FUNC | ALT | SPACE | | LOWER | RAISE | OS/_QW |
* '--------------------------' '--------------------------'
*/

Expand All @@ -111,7 +81,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL ,
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT ,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MPLY, MO(_FN), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT ,
MO(_FN), KC_LALT, KC_SPC, MO(_LW), MO(_RS), MO(_FN)
MO(_GF), KC_LALT, KC_SPC, MO(_LW), MO(_RS), TD(TD_HOME)
),

/* LOWER
Expand All @@ -120,66 +90,89 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+-----------------|
* | TAB | Q | W | E | R | T | | Y | U | I | O | P | DEL |
* |--------+--------+--------+--------+--------+--------| |--------+--------+--------+-----------------+--------|
* | LCTRL | A | S | D | F | - | | = | - | K | ' | \ | ENTER |
* | LCTRL | A | S | D | F | G | | H | - | = | L | ' | ENTER |
* |--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------------------------+--------|
* | LSHIFT | Z | X | C | V | [ | PLAY | | ???? | ] | = | , | . | / | RSHIFT |
* | LSHIFT | Z | X | C | V | B | PLAY | | FUNC | N | M | [ | ] | \ | RSHIFT |
* '-----------------------------------+--------+--------+--------| |--------+--------+--------+-----------------------------------'
* | OS | ALT | SPACE | | FN | LOWER | RAISE |
* | OS | ALT | SPACE | | LOWER | RAISE | ????? |
* '--------------------------' '--------------------------'
*/

[_LW] = LAYOUT(
KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
_______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_QUOT, KC_BSLS, _______ ,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_SLSH, _______ ,
_______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, _______, KC_QUOT, _______ ,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_BSLS, _______ ,
_______, _______, _______, _______, _______, _______
),


/* RAISE
* .-----------------------------------------------------. .-----------------------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BACKSP |
* | GRAVE | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BACKSP |
* |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+-----------------|
* | TAB | Q | W | E | R | T | | Y | U | I | O | P | DEL |
* |--------+--------+--------+--------+--------+--------| |--------+--------+--------+-----------------+--------|
* | LCTRL | A | S | D | F | _ | | + | J | K | "" | | | ENTER |
* | LCTRL | A | S | D | F | G | | H | _ | + | L | "" | ENTER |
* |--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------------------------+--------|
* | LSHIFT | Z | X | C | V | { | PLAY | | ???? | } | M | < | > | ? | RSHIFT |
* | LSHIFT | Z | X | C | V | B | PLAY | | FUNC | N | M | { | } | | | RSHIFT |
* '-----------------------------------+--------+--------+--------| |--------+--------+--------+-----------------------------------'
* | OS | ALT | SPACE | | FN | LOWER | RAISE |
* | OS | ALT | SPACE | | LOWER | RAISE | ????? |
* '--------------------------' '--------------------------'
*/

[_RS] = LAYOUT(
KC_TILD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
_______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_DQUO, KC_PIPE, _______ ,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LCBR, KC_RCBR, KC_QUES, _______ ,
_______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, _______, KC_DQUO, _______ ,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LCBR, KC_RCBR, KC_PIPE, _______ ,
_______, _______, _______, _______, _______, _______
),


/* GAMING FUNCTION
* .-----------------------------------------------------. .-----------------------------------------------------.
* | | F1 | F2 | F3 | F4 | F5 | | | | | | | BACKSP |
* |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+-----------------|
* | | | W | | | | | | PGDN | PGUP | | | DEL |
* |--------+--------+--------+--------+--------+--------| |--------+--------+--------+-----------------+--------|
* | | A | S | D | | | | LEFT | DOWN | UP | RIGHT | | ENTER |
* |--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------------------------+--------|
* | | | | | | | | | | | | | | | RSHIFT |
* '-----------------------------------+--------+--------+--------| |--------+--------+--------+-----------------------------------'
* | | | | | | | |
* '--------------------------' '--------------------------'
*/

[_GF] = LAYOUT(
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, _______, _______, _______, _______ ,
_______, _______, _______, _______, _______, _______, _______, KC_PGDN, KC_PGUP, _______, _______, _______ ,
_______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______ ,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
_______, _______, _______, _______, _______, _______
),


/* FUNCTION
* .-----------------------------------------------------. .-----------------------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BACKSP |
* | | F1 | F2 | F3 | F4 | F5 | | | | | | | BACKSP |
* |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+-----------------|
* | TAB | F1 | F2 | F3 | F4 | F5 | | Y | PGDN | PGUP | | | DEL |
* | | F6 | F7 | F8 | F9 | F10 | | | PGDN | PGUP | | | DEL |
* |--------+--------+--------+--------+--------+--------| |--------+--------+--------+-----------------+--------|
* | LCTRL | F6 | F7 | F8 | F9 | F10 | | LEFT | DOWN | UP | RIGHT | | ENTER |
* | | | | | F11 | F12 | | LEFT | DOWN | UP | RIGHT | | ENTER |
* |--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------------------------+--------|
* | LSHIFT | Z | X | C | F11 | F12 | PLAY | | ???? | N | M | , | . | / | RSHIFT |
* | | | | | | | | | | | | | | | RSHIFT |
* '-----------------------------------+--------+--------+--------| |--------+--------+--------+-----------------------------------'
* | OS | ALT | SPACE | | FN | LOWER | RAISE |
* | | | | | | | |
* '--------------------------' '--------------------------'
*/

[_FN] = LAYOUT(
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, _______, _______, _______, _______ ,
_______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_PGDN, KC_PGUP, _______, _______, _______ ,
_______, RGB_MOD, RGB_HUI, RGB_SAI, KC_F11, KC_F12, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, KC_PIPE, _______ ,
_______, BL_STEP, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, KC_LABK, KC_RABK, KC_QUES, _______ ,
_______, _______, TG(_GM), _______, _______, _______
_______, RGB_MOD, RGB_HUI, RGB_SAI, KC_F11, KC_F12, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______ ,
_______, BL_STEP, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
_______, _______, _______, _______, _______, _______
)


Expand Down

0 comments on commit ea5db22

Please sign in to comment.