]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - keyboards/planck/keymaps/khord/keymap.c
tap dance working for esc and arrows
[qmk_firmware.git] / keyboards / planck / keymaps / khord / keymap.c
index 478e1f8224b6869d16e08617049b4a51e2dade32..6f19966f25e602e7800074b7ef698db007c8970a 100644 (file)
@@ -37,6 +37,15 @@ enum planck_keycodes {
 #define _______ KC_TRNS
 #define XXXXXXX KC_NO
 
+// Tap Dance Declarations
+enum {
+  ESC_CAP = 0,
+  LFT_HOM,
+  DWN_PDN,
+  UPP_PUP,
+  RGT_END
+};
+
 // Dylan's additions
 #define C_A_DEL LALT(LCTL(KC_DEL))
 #define C_A_INS LALT(LCTL(KC_INS))
@@ -55,10 +64,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  * `-----------------------------------------------------------------------------------'
  */
 [_QWERTY] = {
-  {KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_BSPC},
-  {KC_ESC,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT},
-  {KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT },
-  {BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER,   KC_SPC,  KC_SPC,  RAISE,   KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT}
+  {KC_TAB,      KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,        KC_O,        KC_P,        KC_BSPC      },
+  {TD(ESC_CAP), KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,        KC_L,        KC_SCLN,     KC_QUOT      },
+  {KC_LSFT,     KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM,     KC_DOT,      KC_SLSH,     SFT_T(KC_ENT)},
+  {BACKLIT,     KC_LCTL, KC_LALT, KC_LGUI, LOWER,   KC_SPC,  KC_SPC,  RAISE,   TD(LFT_HOM), TD(DWN_PDN), TD(UPP_PUP), TD(RGT_END)  }
 },
 
 /* Colemak
@@ -173,6 +182,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 
 };
 
+
+qk_tap_dance_action_t tap_dance_actions[] = {
+  [ESC_CAP] = ACTION_TAP_DANCE_DOUBLE(KC_ESC, KC_CAPS),
+  [LFT_HOM] = ACTION_TAP_DANCE_DOUBLE(KC_LEFT, KC_HOME),
+  [DWN_PDN] = ACTION_TAP_DANCE_DOUBLE(KC_DOWN, KC_PGDN),
+  [UPP_PUP] = ACTION_TAP_DANCE_DOUBLE(KC_UP, KC_PGUP),
+  [RGT_END] = ACTION_TAP_DANCE_DOUBLE(KC_RGHT, KC_END)
+};
+
 #ifdef AUDIO_ENABLE
 
 float tone_startup[][2]    = SONG(SONIC_RING); //plug in