qmk_firmware/keyboards/kc60/keymaps/stanleylai/keymap.c

52 lines
3.5 KiB
C
Raw Normal View History

#include QMK_KEYBOARD_H
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
KC60 Layout Standardization and Cleanup (#22125) * Refactor `dbroqua` keymap - use `layer_names` enum - use QMK-native alias for `KC_TRNS` - apply four-space indent - grid-align keycodes - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Refactor `dbroqua_hhkb` keymap - use `layer_names` enum - use QMK-native alias for `KC_TRNS` - apply four-space indent - grid-align keycodes - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Touch-up `default` keymap - fix keycode grid alignment [style] * Refactor `sgoodwin` keymap - grid-align keycodes - apply four-space indent - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Refactor `stanleylai` keymap - delete `config.h` (use RGB config from keyboard `info.json`) - fixes non-compilation - use `layer_names` enum - use four-space indent - update keycode grid alignment - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [bugfix] [refactor] * Touch-up `via` keymap - fix keycode grid alignment [style] * Refactor `wigguno` keymap - use four-space indent - use QMK-native keycode alias for `KC_DELETE` - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Remove `LAYOUT` macro Superseded by `LAYOUT_all`. [chore] * Add `LAYOUT_60_ansi_split_bs_rshift` [enhancement] * Add `LAYOUT_60_tsangan_hhkb` [enhancement] * Add `LAYOUT_60_ansi_tsangan` [enhancement] * Add `LAYOUT_60_iso_split_bs_rshift` [enhancement] * Add `LAYOUT_60_iso` [enhancement] * Add `LAYOUT_60_iso_tsangan_split_bs_rshift` [enhancement] * Add `LAYOUT_60_iso_tsangan` [enhancement] * Add `LAYOUT_60_hhkb` [enhancement] * Add `LAYOUT_60_true_hhkb` [enhancement] * Add layout/matrix diagram [docs] * Add `LAYOUT_60_abnt2` [enhancement] * Extend Community Layout support Add support for community layouts: - `60_ansi_split_bs_rshift` - `60_ansi_tsangan` - `60_tsangan_hhkb` - `60_hhkb` - `60_abnt2` - `60_iso` - `60_iso_split_bs_rshift` - `60_iso_tsangan` [enhancement] * Fix `LAYOUT_60_abnt2` support [bugfix]
2023-09-25 00:29:44 +02:00
enum layer_names {
_BL,
_FL,
_RGBL
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC60 Layout Standardization and Cleanup (#22125) * Refactor `dbroqua` keymap - use `layer_names` enum - use QMK-native alias for `KC_TRNS` - apply four-space indent - grid-align keycodes - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Refactor `dbroqua_hhkb` keymap - use `layer_names` enum - use QMK-native alias for `KC_TRNS` - apply four-space indent - grid-align keycodes - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Touch-up `default` keymap - fix keycode grid alignment [style] * Refactor `sgoodwin` keymap - grid-align keycodes - apply four-space indent - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Refactor `stanleylai` keymap - delete `config.h` (use RGB config from keyboard `info.json`) - fixes non-compilation - use `layer_names` enum - use four-space indent - update keycode grid alignment - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [bugfix] [refactor] * Touch-up `via` keymap - fix keycode grid alignment [style] * Refactor `wigguno` keymap - use four-space indent - use QMK-native keycode alias for `KC_DELETE` - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Remove `LAYOUT` macro Superseded by `LAYOUT_all`. [chore] * Add `LAYOUT_60_ansi_split_bs_rshift` [enhancement] * Add `LAYOUT_60_tsangan_hhkb` [enhancement] * Add `LAYOUT_60_ansi_tsangan` [enhancement] * Add `LAYOUT_60_iso_split_bs_rshift` [enhancement] * Add `LAYOUT_60_iso` [enhancement] * Add `LAYOUT_60_iso_tsangan_split_bs_rshift` [enhancement] * Add `LAYOUT_60_iso_tsangan` [enhancement] * Add `LAYOUT_60_hhkb` [enhancement] * Add `LAYOUT_60_true_hhkb` [enhancement] * Add layout/matrix diagram [docs] * Add `LAYOUT_60_abnt2` [enhancement] * Extend Community Layout support Add support for community layouts: - `60_ansi_split_bs_rshift` - `60_ansi_tsangan` - `60_tsangan_hhkb` - `60_hhkb` - `60_abnt2` - `60_iso` - `60_iso_split_bs_rshift` - `60_iso_tsangan` [enhancement] * Fix `LAYOUT_60_abnt2` support [bugfix]
2023-09-25 00:29:44 +02:00
// See base_layer.png and rgb_layer.png for layout reference
KC60 Layout Standardization and Cleanup (#22125) * Refactor `dbroqua` keymap - use `layer_names` enum - use QMK-native alias for `KC_TRNS` - apply four-space indent - grid-align keycodes - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Refactor `dbroqua_hhkb` keymap - use `layer_names` enum - use QMK-native alias for `KC_TRNS` - apply four-space indent - grid-align keycodes - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Touch-up `default` keymap - fix keycode grid alignment [style] * Refactor `sgoodwin` keymap - grid-align keycodes - apply four-space indent - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Refactor `stanleylai` keymap - delete `config.h` (use RGB config from keyboard `info.json`) - fixes non-compilation - use `layer_names` enum - use four-space indent - update keycode grid alignment - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [bugfix] [refactor] * Touch-up `via` keymap - fix keycode grid alignment [style] * Refactor `wigguno` keymap - use four-space indent - use QMK-native keycode alias for `KC_DELETE` - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Remove `LAYOUT` macro Superseded by `LAYOUT_all`. [chore] * Add `LAYOUT_60_ansi_split_bs_rshift` [enhancement] * Add `LAYOUT_60_tsangan_hhkb` [enhancement] * Add `LAYOUT_60_ansi_tsangan` [enhancement] * Add `LAYOUT_60_iso_split_bs_rshift` [enhancement] * Add `LAYOUT_60_iso` [enhancement] * Add `LAYOUT_60_iso_tsangan_split_bs_rshift` [enhancement] * Add `LAYOUT_60_iso_tsangan` [enhancement] * Add `LAYOUT_60_hhkb` [enhancement] * Add `LAYOUT_60_true_hhkb` [enhancement] * Add layout/matrix diagram [docs] * Add `LAYOUT_60_abnt2` [enhancement] * Extend Community Layout support Add support for community layouts: - `60_ansi_split_bs_rshift` - `60_ansi_tsangan` - `60_tsangan_hhkb` - `60_hhkb` - `60_abnt2` - `60_iso` - `60_iso_split_bs_rshift` - `60_iso_tsangan` [enhancement] * Fix `LAYOUT_60_abnt2` support [bugfix]
2023-09-25 00:29:44 +02:00
// Base Default Layer
// Mac Modifier Layout. Use BootMagic to toggle GUI and ALT positions.
[_BL] = LAYOUT_all(
QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_NO,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
LT(_FL, KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT,
KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FL),
KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT),
KC60 Layout Standardization and Cleanup (#22125) * Refactor `dbroqua` keymap - use `layer_names` enum - use QMK-native alias for `KC_TRNS` - apply four-space indent - grid-align keycodes - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Refactor `dbroqua_hhkb` keymap - use `layer_names` enum - use QMK-native alias for `KC_TRNS` - apply four-space indent - grid-align keycodes - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Touch-up `default` keymap - fix keycode grid alignment [style] * Refactor `sgoodwin` keymap - grid-align keycodes - apply four-space indent - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Refactor `stanleylai` keymap - delete `config.h` (use RGB config from keyboard `info.json`) - fixes non-compilation - use `layer_names` enum - use four-space indent - update keycode grid alignment - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [bugfix] [refactor] * Touch-up `via` keymap - fix keycode grid alignment [style] * Refactor `wigguno` keymap - use four-space indent - use QMK-native keycode alias for `KC_DELETE` - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Remove `LAYOUT` macro Superseded by `LAYOUT_all`. [chore] * Add `LAYOUT_60_ansi_split_bs_rshift` [enhancement] * Add `LAYOUT_60_tsangan_hhkb` [enhancement] * Add `LAYOUT_60_ansi_tsangan` [enhancement] * Add `LAYOUT_60_iso_split_bs_rshift` [enhancement] * Add `LAYOUT_60_iso` [enhancement] * Add `LAYOUT_60_iso_tsangan_split_bs_rshift` [enhancement] * Add `LAYOUT_60_iso_tsangan` [enhancement] * Add `LAYOUT_60_hhkb` [enhancement] * Add `LAYOUT_60_true_hhkb` [enhancement] * Add layout/matrix diagram [docs] * Add `LAYOUT_60_abnt2` [enhancement] * Extend Community Layout support Add support for community layouts: - `60_ansi_split_bs_rshift` - `60_ansi_tsangan` - `60_tsangan_hhkb` - `60_hhkb` - `60_abnt2` - `60_iso` - `60_iso_split_bs_rshift` - `60_iso_tsangan` [enhancement] * Fix `LAYOUT_60_abnt2` support [bugfix]
2023-09-25 00:29:44 +02:00
// Function layer
[_FL] = LAYOUT_all(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_NO,
KC_NO, KC_MPRV, KC_UP, KC_MNXT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PSCR, KC_SCRL, KC_PAUS, KC_INS,
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_TRNS, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, LT(_RGBL, KC_PGUP), KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_HOME, KC_PGDN, KC_END),
KC60 Layout Standardization and Cleanup (#22125) * Refactor `dbroqua` keymap - use `layer_names` enum - use QMK-native alias for `KC_TRNS` - apply four-space indent - grid-align keycodes - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Refactor `dbroqua_hhkb` keymap - use `layer_names` enum - use QMK-native alias for `KC_TRNS` - apply four-space indent - grid-align keycodes - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Touch-up `default` keymap - fix keycode grid alignment [style] * Refactor `sgoodwin` keymap - grid-align keycodes - apply four-space indent - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Refactor `stanleylai` keymap - delete `config.h` (use RGB config from keyboard `info.json`) - fixes non-compilation - use `layer_names` enum - use four-space indent - update keycode grid alignment - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [bugfix] [refactor] * Touch-up `via` keymap - fix keycode grid alignment [style] * Refactor `wigguno` keymap - use four-space indent - use QMK-native keycode alias for `KC_DELETE` - refactor keymap to use `LAYOUT_all` macro. - The keycode for position [4, 9] (right half of Split Backspace) moves to the top row. - The keycodes for positions [3, 12] and [3, 13] (1.75u/1u Split RShift) switch positions. [refactor] * Remove `LAYOUT` macro Superseded by `LAYOUT_all`. [chore] * Add `LAYOUT_60_ansi_split_bs_rshift` [enhancement] * Add `LAYOUT_60_tsangan_hhkb` [enhancement] * Add `LAYOUT_60_ansi_tsangan` [enhancement] * Add `LAYOUT_60_iso_split_bs_rshift` [enhancement] * Add `LAYOUT_60_iso` [enhancement] * Add `LAYOUT_60_iso_tsangan_split_bs_rshift` [enhancement] * Add `LAYOUT_60_iso_tsangan` [enhancement] * Add `LAYOUT_60_hhkb` [enhancement] * Add `LAYOUT_60_true_hhkb` [enhancement] * Add layout/matrix diagram [docs] * Add `LAYOUT_60_abnt2` [enhancement] * Extend Community Layout support Add support for community layouts: - `60_ansi_split_bs_rshift` - `60_ansi_tsangan` - `60_tsangan_hhkb` - `60_hhkb` - `60_abnt2` - `60_iso` - `60_iso_split_bs_rshift` - `60_iso_tsangan` [enhancement] * Fix `LAYOUT_60_abnt2` support [bugfix]
2023-09-25 00:29:44 +02:00
// RGB Layer
[_RGBL] = LAYOUT_all(
#ifdef RGBLIGHT_ENABLE
QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_TRNS, KC_NO, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_STEP, BL_TOGG, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
#else
QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, BL_STEP, BL_TOGG, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
#endif
),
};