2
0

keymap.c 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. #include "kinesis.h"
  2. #include "action_layer.h"
  3. #define QWERTY 0 // Base qerty
  4. #define SYMB 1// Symbol layer
  5. // An almost entirely blank keymap. Test layers with the upper right hand key - 1 in normal mode, reset in layer 2.
  6. /****************************************************************************************************
  7. *
  8. * Keymap: Default Layer in Qwerty
  9. *
  10. * ,-------------------------------------------------------------------------------------------------------------------.
  11. * | Esc | F1 | F2 | F3 | F4 | F5 | F6 | F8 | F9 | F10 | F12 | PSCR | SLCK | PAUS | FN0 | BOOT |
  12. * |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------|
  13. * | =+ | 1! | 2@ | 3# | 4$ | 5% | | 6^ | 7& | 8* | 9( | 0) | -_ |
  14. * |--------+------+------+------+------+------| +------+------+------+------+------+--------|
  15. * | Tab | Q | W | E | R | T | | Y | U | I | O | P | \| |
  16. * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
  17. * | Caps | A | S | D | F | G | | H | J | K | L | ;: | '" |
  18. * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
  19. * | Shift | Z | X | C | V | B | | N | M | ,. | .> | /? | Shift |
  20. * `--------+------+------+------+------+------- `------+------+------+------+------+--------'
  21. * | `~ | INS | Left | Right| | Up | Down | [{ | ]} |
  22. * `---------------------------' `---------------------------'
  23. * ,-------------. ,-------------.
  24. * | Ctrl | Alt | | Gui | Ctrl |
  25. * ,------|------|------| |------+------+------.
  26. * | | | Home | | PgUp | | |
  27. * | BkSp | Del |------| |------|Return| Space|
  28. * | | | End | | PgDn | | |
  29. * `--------------------' `--------------------'
  30. */
  31. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  32. [QWERTY] = KEYMAP(
  33. KC_ESC, KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8,
  34. KC_EQL, KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,
  35. KC_TAB, KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,
  36. KC_CAPS,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,
  37. KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,
  38. KC_GRV ,KC_INS ,KC_LEFT,KC_RGHT,
  39. KC_LCTL,KC_LALT,
  40. KC_HOME,
  41. KC_BSPC,KC_DEL ,KC_END ,
  42. KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR ,KC_SLCK ,KC_PAUS, KC_FN0, KC_1,
  43. KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS,
  44. KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_BSLS,
  45. KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT,
  46. KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT,
  47. KC_UP ,KC_DOWN,KC_LBRC,KC_RBRC,
  48. KC_RGUI,KC_RCTL,
  49. KC_PGUP,
  50. KC_PGDN,KC_ENTER ,KC_SPC
  51. ),
  52. [SYMB] = KEYMAP(
  53. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
  54. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
  55. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
  56. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
  57. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
  58. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
  59. KC_TRNS, KC_TRNS,
  60. KC_TRNS,
  61. KC_TRNS, KC_TRNS, KC_TRNS,
  62. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_FN0, RESET,
  63. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
  64. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
  65. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
  66. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
  67. KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
  68. KC_TRNS, KC_TRNS,
  69. KC_TRNS,
  70. KC_TRNS, KC_TRNS, KC_TRNS
  71. )
  72. };
  73. const uint16_t PROGMEM fn_actions[] = {
  74. [0] = ACTION_LAYER_TAP_TOGGLE(SYMB) , // FN1 - Momentary Layer 1 (Symbols)
  75. };
  76. const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
  77. {
  78. // MACRODOWN only works in this function
  79. switch(id) {
  80. case 0:
  81. if (record->event.pressed) {
  82. register_code(KC_RSFT);
  83. } else {
  84. unregister_code(KC_RSFT);
  85. }
  86. break;
  87. }
  88. return MACRO_NONE;
  89. };
  90. void matrix_init_user(void) {
  91. }
  92. void matrix_scan_user(void) {
  93. }
  94. bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  95. return true;
  96. }
  97. void led_set_user(uint8_t usb_led) {
  98. }