Keyboard firmwares for Atmel AVR and Cortex-M
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

преди 10 години
преди 11 години
преди 10 години
преди 10 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 10 години
преди 11 години
преди 11 години
преди 11 години
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. #include "keymap_common.h"
  2. /*
  3. * Hasu
  4. */
  5. const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  6. /* Keymap 0: Default Layer
  7. * ,-----------------------------------------------------------.
  8. * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp |
  9. * |-----------------------------------------------------------|
  10. * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \|
  11. * |-----------------------------------------------------------|
  12. * |Caps | A| S| D| F| G| H| J| K| L|Fn3| '|Return |
  13. * |-----------------------------------------------------------|
  14. * |Shift | Z| X| C| V| B| N| M| ,| .|Fn2|Shift |
  15. * |-----------------------------------------------------------|
  16. * |Ctrl|Gui |Alt | Space |Alt |Fn4 |Fn4 |Fn1 |
  17. * `-----------------------------------------------------------'
  18. */
  19. KEYMAP_ANSI(
  20. ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \
  21. TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, \
  22. LCTL,A, S, D, F, G, H, J, K, L, FN2, QUOT, ENT, \
  23. LSFT,Z, X, C, V, B, N, M, COMM,DOT, FN1, FN9, \
  24. LCTL,LGUI,LALT, SPC, RALT,FN3, FN3, FN0),
  25. /* Keymap 1: colemak */
  26. KEYMAP_ANSI(
  27. GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \
  28. TAB, Q, W, F, P, G, J, L, U, Y, SCLN,LBRC,RBRC,BSLS, \
  29. BSPC,A, R, S, T, D, H, N, E, I, O, QUOT, ENT, \
  30. LSFT,Z, X, C, V, B, K, M, COMM,DOT, SLSH, RSFT, \
  31. LCTL,LGUI,LALT, SPC, RALT,RGUI,APP, FN0),
  32. /* Keymap 2: dvorak */
  33. KEYMAP_ANSI(
  34. GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, LBRC,RBRC,BSPC, \
  35. TAB, QUOT,COMM,DOT, P, Y, F, G, C, R, L, SLSH,EQL, BSLS, \
  36. CAPS,A, O, E, U, I, D, H, T, N, S, MINS, ENT, \
  37. LSFT,SCLN,Q, J, K, X, B, M, W, V, Z, RSFT, \
  38. LCTL,LGUI,LALT, SPC, RALT,RGUI,APP, FN0),
  39. /* Keymap 3: workman */
  40. KEYMAP_ANSI(
  41. GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \
  42. TAB, Q, D, R, W, B, J, F, U, P, SCLN,LBRC,RBRC,BSLS, \
  43. BSPC,A, S, H, T, G, Y, N, E, O, I, QUOT, ENT, \
  44. LSFT,Z, X, M, C, V, K, L, COMM,DOT, SLSH, RSFT, \
  45. LCTL,LGUI,LALT, SPC, RALT,RGUI,APP, FN0),
  46. /* Overlay 4: HHKB mode
  47. * ,-----------------------------------------------------------.
  48. * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Delete |
  49. * |-----------------------------------------------------------|
  50. * |Caps | | | | | | | |Psc|Slk|Pus|Up | |Inser|
  51. * |-----------------------------------------------------------|
  52. * |Contro|VoD|VoU|Mut| | | *| /|Hom|PgU|Lef|Rig|Enter |
  53. * |-----------------------------------------------------------|
  54. * |Shift | | | | | | +| -|End|PgD|Dow|Shift |
  55. * |-----------------------------------------------------------|
  56. * |Ctrl|Gui |Alt | Space |Alt |Gui |App | |
  57. * `-----------------------------------------------------------'
  58. */
  59. KEYMAP_ANSI(
  60. GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, DEL, \
  61. CAPS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS,UP, TRNS,INS, \
  62. LCTL,VOLD,VOLU,MUTE,TRNS,TRNS,PAST,PSLS,HOME,PGUP,LEFT,RGHT, ENT, \
  63. LSFT,TRNS,TRNS,TRNS,TRNS,TRNS,PPLS,PMNS,END, PGDN,DOWN, RSFT, \
  64. LCTL,LGUI,LALT, SPC, RALT,RGUI,FN4, TRNS),
  65. /* Overlay 5: Vi mode (Slash)
  66. * ,-----------------------------------------------------------.
  67. * | `| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Backsp |
  68. * |-----------------------------------------------------------|
  69. * |Tab |Hom|PgD|Up |PgU|End|Hom|PgD|PgU|End| | | | |
  70. * |-----------------------------------------------------------|
  71. * |Contro| |Lef|Dow|Rig| |Lef|Dow|Up |Rig| | |Return |
  72. * |-----------------------------------------------------------|
  73. * |Shift | | | | | |Hom|PgD|PgU|End| |Shift |
  74. * |-----------------------------------------------------------|
  75. * |Ctrl|Gui |Alt | Space |Alt |Gui |App |Ctrl|
  76. * `-----------------------------------------------------------'
  77. */
  78. KEYMAP_ANSI(
  79. GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, BSPC, \
  80. TAB, HOME,PGDN,UP, PGUP,END, HOME,PGDN,PGUP,END, TRNS,TRNS,TRNS,TRNS, \
  81. LCTL,TRNS,LEFT,DOWN,RGHT,TRNS,LEFT,DOWN,UP, RGHT,TRNS,TRNS, ENT, \
  82. LSFT,TRNS,TRNS,TRNS,TRNS,TRNS,HOME,PGDN,PGUP,END, TRNS, RSFT, \
  83. LCTL,LGUI,LALT, SPC, RALT,RGUI,APP, RCTL),
  84. /* Overlay 6: Mouse mode (Semicolon/App)
  85. * ,-----------------------------------------------------------.
  86. * | `| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Backsp |
  87. * |-----------------------------------------------------------|
  88. * |Tab | | | | | |MwL|MwD|MwU|MwR| | | | |
  89. * |-----------------------------------------------------------|
  90. * |Contro| |Ac0|Ac1|Ac1| |McL|McD|McU|McR| | |Return |
  91. * |-----------------------------------------------------------|
  92. * |Shift | | | | |Mb3|Mb2|Mb1|Mb4|Mb5| |Shift |
  93. * |-----------------------------------------------------------|
  94. * |Ctrl|Gui |Alt | Space | | | | |
  95. * `-----------------------------------------------------------'
  96. * Mc: Mouse Cursor / Mb: Mouse Button / Mw: Mouse Wheel
  97. */
  98. KEYMAP_ANSI(
  99. GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, BSPC, \
  100. TAB, TRNS,TRNS,TRNS,TRNS,TRNS,WH_L,WH_D,WH_U,WH_R,TRNS,TRNS,TRNS,TRNS, \
  101. LCTL,TRNS,ACL0,ACL1,ACL2,TRNS,MS_L,MS_D,MS_U,MS_R,TRNS,TRNS, ENT, \
  102. LSFT,TRNS,TRNS,TRNS,TRNS,BTN3,BTN2,BTN1,BTN4,BTN5,TRNS, RSFT, \
  103. LCTL,LGUI,LALT, BTN1, TRNS,TRNS,TRNS,RCTL),
  104. /* Overlay 7: Layout selector
  105. * ,-----------------------------------------------------------.
  106. * | Lq| Lc| Ld| Lw| | | | | | | | | | |
  107. * |-----------------------------------------------------------|
  108. * | |Lq |Lw | | | | | | | | | | | |
  109. * |-----------------------------------------------------------|
  110. * | | | |Ld | | | | | | | | | |
  111. * |-----------------------------------------------------------|
  112. * | | | |Lc | | | | | | | | |
  113. * |-----------------------------------------------------------|
  114. * | | | | | | | | |
  115. * `-----------------------------------------------------------'
  116. * Lq: set Qwerty layout
  117. * Lc: set Colemak layout
  118. * Ld: set Dvorak layout
  119. * Lw: set Workman layout
  120. */
  121. KEYMAP_ANSI(
  122. FN5, FN6, FN7, FN8, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  123. TRNS,FN5, FN8, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  124. TRNS,TRNS,TRNS,FN7, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \
  125. TRNS,TRNS,TRNS,FN6, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \
  126. TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS,TRNS),
  127. };
  128. /*
  129. * Fn action definition
  130. */
  131. const uint16_t PROGMEM fn_actions[] = {
  132. [0] = ACTION_LAYER_MOMENTARY(4),
  133. [1] = ACTION_LAYER_TAP_KEY(5, KC_SLASH),
  134. [2] = ACTION_LAYER_TAP_KEY(6, KC_SCLN),
  135. [3] = ACTION_LAYER_MOMENTARY(6),
  136. [4] = ACTION_LAYER_MOMENTARY(7), // to Layout selector
  137. [5] = ACTION_DEFAULT_LAYER_SET(0), // set qwerty layout
  138. [6] = ACTION_DEFAULT_LAYER_SET(1), // set colemak layout
  139. [7] = ACTION_DEFAULT_LAYER_SET(2), // set dvorak layout
  140. [8] = ACTION_DEFAULT_LAYER_SET(3), // set workman layout
  141. [9] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_GRV),
  142. };