Keyboard firmwares for Atmel AVR and Cortex-M
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

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