keymap.c 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. /*
  2. NQN is not-quite-neo
  3. A layout based on the
  4. */
  5. #pragma message "You may need to add LAYOUT_planck_grid to your keymap layers - see default for an example"
  6. #include "planck.h"
  7. #include "nqn-keys-on-quertz-de-latin1.h"
  8. #include "nqn-basic-layout.h"
  9. // Automatic number generation of important keywords
  10. enum my_keycodes{
  11. // Layer numbers follow the neo2 terminology, i.e. base layer = layer 1
  12. L01 = 0,
  13. /* L02, SHIFT is not (yet) implemented as a fully customizable layer */
  14. L03,
  15. L04,
  16. L05,
  17. /* L06, UNSPECIFIED not (yet) needed */
  18. LFN
  19. };
  20. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  21. /* L01 -> default: BASE LAYER
  22. * ,-----------------------------------------------------------------------------------.
  23. * | ESC | | | ENTER|
  24. * |------+ | +------|
  25. * | L03 | L01_LEFT | L01_RIGHT | L03 |
  26. * |------+ | +------|
  27. * | SHIFT| | | SHIFT|
  28. * |------+------+------+------+------+------+------+------+------+------+------+------|
  29. * | CTLR | GUI | ALT | L05 | L04 | SPACE| SPACE| L04 | L05 | ALTGR| LFN | CTLR |
  30. * `-----------------------------------------------------------------------------------'
  31. */
  32. [L01] = {
  33. {KC_ESC, L01_LEFT_01, L01_RIGHT_01, KC_ENTER},
  34. {MO(L03), L01_LEFT_02, L01_RIGHT_02, MO(L03)},
  35. {KC_LSHIFT, L01_LEFT_03, L01_RIGHT_03, KC_RSFT},
  36. {KC_LCTRL,KC_LGUI, KC_LALT, MO(L05), MO(L04), KC_SPC, KC_SPC, MO(L04), MO(L05), KC_RALT, MO(LFN), KC_RCTRL}
  37. },
  38. /*
  39. L02 -> MO(L02): SHIFT (as a layer not used, not defined, not reachable)
  40. */
  41. /* L03 -> MO(L03): PROGRAMMING
  42. * ,-----------------------------------------------------------------------------------.
  43. * | | | | |
  44. * |------+ | +------|
  45. * | | L03_LEFT | L03_RIGHT | |
  46. * |------+ | +------|
  47. * | | | | |
  48. * |------+------+------+------+------+------+------+------+------+------+------+------|
  49. * | | | | | | | | | | | | |
  50. * `-----------------------------------------------------------------------------------'
  51. */
  52. [L03] = {
  53. {_______, L03_LEFT_01, L03_RIGHT_01, _______},
  54. {_______, L03_LEFT_02, L03_RIGHT_02, _______},
  55. {_______, L03_LEFT_03, L03_RIGHT_03, _______},
  56. {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}
  57. },
  58. /* L04 -> MO(L04): NAVIGATION AND NUMBERS
  59. * ,-----------------------------------------------------------------------------------.
  60. * | | | | |
  61. * |------+ | +------|
  62. * | | L04_LEFT | L04_RIGHT | |
  63. * |------+ | +------|
  64. * | | | | |
  65. * |------+------+------+------+------+------+------+------+------+------+------+------|
  66. * | | | | | | | 0 | | | | | |
  67. * `-----------------------------------------------------------------------------------'
  68. */
  69. [L04] = {
  70. {_______, L04_LEFT_01, L04_RIGHT_01, _______},
  71. {_______, L04_LEFT_02, L04_RIGHT_02, _______},
  72. {_______, L04_LEFT_03, L04_RIGHT_03, _______},
  73. {_______, _______, _______, _______, _______, _______, KC_0, _______, _______, _______, _______, _______}
  74. },
  75. /* L05 -> MO(L05): ALTERNATE
  76. * ,-----------------------------------------------------------------------------------.
  77. * | | | | |
  78. * |------+ | +------|
  79. * | | L05_LEFT | L05_RIGHT | |
  80. * |------+ | +------|
  81. * | | | | |
  82. * |------+------+------+------+------+------+------+------+------+------+------+------|
  83. * | | | | | | | | | | | | |
  84. * `-----------------------------------------------------------------------------------'
  85. */
  86. [L05] = {
  87. {_______, L05_LEFT_01, L05_RIGHT_01, _______},
  88. {_______, L05_LEFT_02, L05_RIGHT_02, _______},
  89. {_______, L05_LEFT_03, L05_RIGHT_03, _______},
  90. {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}
  91. },
  92. /*
  93. L06 -> <TBD>: UNSPECIFIED
  94. */
  95. /* LFN -> MO(FN): FUNCTION
  96. * ,-----------------------------------------------------------------------------------.
  97. * | RESET| | | BACKS|
  98. * |------+ | +------|
  99. * | | L06_LEFT | L06_RIGHT |INSERT|
  100. * |------+ | +------|
  101. * | | | |DELETE|
  102. * |------+------+------+------+------+------+------+------+------+------+------+------|
  103. * |VOICE-|VOICE+|MUS ON|MUS OF| LIGHT| | | VOL+ | VOL- | MUTE | | |
  104. * `-----------------------------------------------------------------------------------'
  105. */
  106. [LFN] = {
  107. {RESET, L06_LEFT_01, L06_RIGHT_01, KC_BSPC},
  108. {_______, L06_LEFT_02, L06_RIGHT_02, KC_INS},
  109. {_______, L06_LEFT_03, L06_RIGHT_03, KC_DEL},
  110. {MUV_DE, MUV_IN, MU_ON, MU_OFF, _______, _______, _______, KC_VOLU, KC_VOLD, KC_MUTE, _______, _______}
  111. }
  112. };