Improve default layout of 9key and give example macro

This commit is contained in:
Cory Shaw 2017-08-24 21:15:58 -04:00 committed by Jack Humbert
parent afd7bf5f09
commit 2aedbf872b

View file

@ -2,45 +2,63 @@
// Tap Dance Declarations // Tap Dance Declarations
enum { enum {
ENT_5 = 0 ENT_5 = 0,
ZERO_7
};
// Macro Declarations
enum {
DBL_0 = 0
}; };
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* LAYER 0 /* LAYER 0
* ,-----------------. * ,-----------------------.
* | 1 | 2 | 3 | * | 1 | 2 | 3 |
* |-----+-----+-----| * |-------+-------+-------|
* | 4 | 5/ENT | 6 | Dbl Tap 5 for Enter * | 4 | 5/ENT | 6 | Dbl Tap 5 for Enter
* |-----+-----+-----| * |-------+-------+-------|
* | 7 | 8 | FN | * | 7/0 | 8 | 9/FN | 7/0 = Dbl Tap 7 for 0 - 9/FN = Hold 9 for FN
* `-----------------' * `-----------------------'
*/ */
[0] = KEYMAP( \ [0] = KEYMAP( \
KC_1, KC_2, KC_3, \ KC_1, KC_2, KC_3, \
KC_4, TD(ENT_5), KC_6, \ KC_4, TD(ENT_5), KC_6, \
KC_7, KC_8, MO(1) \ TD(ZERO_7), KC_8, LT(1, KC_9) \
), ),
/* LAYER 1 /* LAYER 1
* ,-----------------. * ,-----------------------.
* | 9 | 0 | - | * | ESC | + | - |
* |-----+-----+-----| * |-------+-------+-------|
* | + | * | / | * | BSPC | * | / |
* |-----+-----+-----| * |-------+-------+-------|
* | F1 | F2 | | * | 00 | . | |
* `-----------------' * `-----------------------'
*/ */
[1] = KEYMAP( \ [1] = KEYMAP( \
KC_9, KC_0, KC_MINS, \ KC_ESC, KC_PLUS, KC_MINS, \
KC_PLUS, KC_ASTR, KC_SLSH, \ KC_BSPC, KC_ASTR, KC_SLSH, \
KC_F1, KC_F2, KC_TRNS \ M(DBL_0), KC_DOT, KC_TRNS \
) )
}; };
qk_tap_dance_action_t tap_dance_actions[] = { qk_tap_dance_action_t tap_dance_actions[] = {
[ENT_5] = ACTION_TAP_DANCE_DOUBLE(KC_5, KC_ENT) [ENT_5] = ACTION_TAP_DANCE_DOUBLE(KC_5, KC_ENT),
[ZERO_7] = ACTION_TAP_DANCE_DOUBLE(KC_7, KC_0)
};
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
if (record->event.pressed) {
switch(id) {
case DBL_0:
SEND_STRING("00");
return false;
}
}
return MACRO_NONE;
}; };
void matrix_init_user(void) { void matrix_init_user(void) {