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.

преди 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 години
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  2. /* 0: qwerty */
  3. KEYMAP_ANSI(
  4. GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \
  5. TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, \
  6. CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, \
  7. LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RSFT, \
  8. LCTL,LGUI,LALT, SPC, FN0, RGUI,APP, RCTL),
  9. /* 1: colemak */
  10. KEYMAP_ANSI(
  11. GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \
  12. TAB, Q, W, F, P, G, J, L, U, Y, SCLN,LBRC,RBRC,BSLS, \
  13. BSPC,A, R, S, T, D, H, N, E, I, O, QUOT, ENT, \
  14. LSFT,Z, X, C, V, B, K, M, COMM,DOT, SLSH, RSFT, \
  15. LCTL,LGUI,LALT, SPC, FN0, RGUI,APP, RCTL),
  16. /* 2: dvorak */
  17. KEYMAP_ANSI(
  18. GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, LBRC,RBRC,BSPC, \
  19. TAB, QUOT,COMM,DOT, P, Y, F, G, C, R, L, SLSH,EQL, BSLS, \
  20. CAPS,A, O, E, U, I, D, H, T, N, S, MINS, ENT, \
  21. LSFT,SCLN,Q, J, K, X, B, M, W, V, Z, RSFT, \
  22. LCTL,LGUI,LALT, SPC, FN0, RGUI,APP, RCTL),
  23. /* 3: workman */
  24. KEYMAP_ANSI(
  25. GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \
  26. TAB, Q, D, R, W, B, J, F, U, P, SCLN,LBRC,RBRC,BSLS, \
  27. BSPC,A, S, H, T, G, Y, N, E, O, I, QUOT, ENT, \
  28. LSFT,Z, X, M, C, V, K, L, COMM,DOT, SLSH, RSFT, \
  29. LCTL,LGUI,LALT, SPC, FN0, RGUI,APP, RCTL),
  30. /* 4: Poker with Arrow */
  31. KEYMAP_ANSI(
  32. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  33. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  34. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \
  35. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, UP, \
  36. TRNS,TRNS,TRNS, TRNS, TRNS,LEFT,DOWN,RGHT),
  37. /* 5: Poker with Esc */
  38. KEYMAP_ANSI(
  39. ESC, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  40. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  41. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \
  42. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \
  43. TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS,TRNS),
  44. /* 6: Poker Fn
  45. * ,-----------------------------------------------------------.
  46. * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| |
  47. * |-----------------------------------------------------------|
  48. * | |FnQ| Up| | | | | | |Cal| |Hom|Ins|FnL |
  49. * |-----------------------------------------------------------|
  50. * | |Lef|Dow|Rig| | |Psc|Slk|Pau| |Tsk|End| |
  51. * |-----------------------------------------------------------|
  52. * | |Del| |Web|Mut|VoU|VoD| |PgU|PgD|Del| |
  53. * |-----------------------------------------------------------|
  54. * | | | | FnS | | | | |
  55. * `-----------------------------------------------------------'
  56. * Fn: to Fn overlay
  57. * FnL: to Layout selector overaly
  58. * FnQ: toggle Esc overlay
  59. * FnS: toggle Arrow overlay
  60. */
  61. KEYMAP_ANSI(
  62. ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, \
  63. TRNS,FN2, UP, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,CALC,TRNS,HOME,INS, FN4, \
  64. TRNS,LEFT,DOWN,RGHT,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,FN3, END, TRNS, \
  65. TRNS,DEL, TRNS,WHOM,MUTE,VOLU,VOLD,TRNS,PGUP,PGDN,DEL, TRNS, \
  66. TRNS,TRNS,TRNS, FN1, TRNS,TRNS,TRNS,TRNS),
  67. /* 7: Layout selector
  68. * ,-----------------------------------------------------------.
  69. * | Lq| Lc| Ld| Lw| | | | | | | | | | |
  70. * |-----------------------------------------------------------|
  71. * | |Lq |Lw | | | | | | | | | | | |
  72. * |-----------------------------------------------------------|
  73. * | | | |Ld | | | | | | | | | |
  74. * |-----------------------------------------------------------|
  75. * | | | |Lc | | | | | | | | |
  76. * |-----------------------------------------------------------|
  77. * | | | | | | | | |
  78. * `-----------------------------------------------------------'
  79. * Lq: set Qwerty layout
  80. * Lc: set Colemak layout
  81. * Ld: set Dvorak layout
  82. * Lw: set Workman layout
  83. */
  84. KEYMAP_ANSI(
  85. FN5, FN6, FN7, FN8, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  86. TRNS,FN5, FN8, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  87. TRNS,TRNS,TRNS,FN7, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \
  88. TRNS,TRNS,TRNS,FN6, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \
  89. TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS,TRNS),
  90. };
  91. static const uint16_t PROGMEM fn_actions[] = {
  92. /* Poker Layout */
  93. [0] = ACTION_LAYER_MOMENTARY(6), // to Fn overlay
  94. [1] = ACTION_LAYER_TOGGLE(4), // toggle arrow overlay
  95. [2] = ACTION_LAYER_TOGGLE(5), // toggle Esc overlay
  96. [3] = ACTION_MODS_KEY(MOD_RCTL|MOD_RSFT, KC_ESC), // Task(RControl,RShift+Esc)
  97. [4] = ACTION_LAYER_MOMENTARY(7), // to Layout selector
  98. [5] = ACTION_DEFAULT_LAYER_SET(0), // set qwerty layout
  99. [6] = ACTION_DEFAULT_LAYER_SET(1), // set colemak layout
  100. [7] = ACTION_DEFAULT_LAYER_SET(2), // set dvorak layout
  101. [8] = ACTION_DEFAULT_LAYER_SET(3), // set workman layout
  102. };