Keyboard firmwares for Atmel AVR and Cortex-M
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

keymap_4x4.c 2.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #include "keymap_common.h"
  2. const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  3. KEYMAP(
  4. ESC, Q, W, E, R, T, Y, U, I, O, P, BSPC, P7, P8, P9, PSLS,
  5. FN2, A, S, D, F, G, H, J, K, L, SCLN, QUOT, P4, P5, P6, PAST,
  6. LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, FN3, P1, P2, P3, PMNS,
  7. LCTL, LALT, LGUI, APP, FN1, SPC, SPC, FN0, LEFT, DOWN, UP, RGHT, P0, P0, PDOT, PPLS
  8. ),
  9. KEYMAP(
  10. GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, DELETE,TRNS, TRNS, TRNS, TRNS,
  11. TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, MINS, EQL, LBRC, RBRC, BSLS, TRNS, TRNS, TRNS, TRNS,
  12. TRNS, F11, F12, F13, F14, F15, F16, F17, F18, F19, F20, TRNS, TRNS, TRNS, TRNS, TRNS,
  13. TRNS, TRNS, TRNS, CAPS, TRNS, TRNS, TRNS, TRNS, HOME, PGDN, PGUP, END, TRNS, TRNS, TRNS, TRNS
  14. ),
  15. KEYMAP(
  16. FN6, FN7, FN8, FN9, FN10, FN11, FN12, FN13, FN14, FN15, FN16, DELETE,TRNS, TRNS, TRNS, TRNS,
  17. TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, FN17, FN18, FN19, FN20, FN21, TRNS, TRNS, TRNS, TRNS,
  18. TRNS, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, TRNS, TRNS, TRNS, TRNS, TRNS,
  19. TRNS, TRNS, TRNS, CAPS, TRNS, TRNS, TRNS, TRNS, HOME, PGDN, PGUP, END, TRNS, TRNS, TRNS, TRNS
  20. ),
  21. KEYMAP( /* Tab */
  22. ESC, CALC, WHOM, MAIL, MYCM, TRNS, TRNS, TRNS, TRNS, TRNS, PSCR, TRNS, TRNS, TRNS, TRNS, TRNS,
  23. TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,
  24. TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,
  25. TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, MS_L, MS_D, MS_U, MS_R, TRNS, TRNS, TRNS, TRNS
  26. ),
  27. };
  28. const action_t PROGMEM fn_actions[] = {
  29. [0] = ACTION_LAYER_MOMENTARY(1),
  30. [1] = ACTION_LAYER_MOMENTARY(2),
  31. [2] = ACTION_LAYER_TAP_KEY(3, KC_TAB),
  32. [3] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_ENT),
  33. [6] = ACTION_MODS_KEY(MOD_LSFT, KC_GRV),
  34. [7] = ACTION_MODS_KEY(MOD_LSFT, KC_1),
  35. [8] = ACTION_MODS_KEY(MOD_LSFT, KC_2),
  36. [9] = ACTION_MODS_KEY(MOD_LSFT, KC_3),
  37. [10] = ACTION_MODS_KEY(MOD_LSFT, KC_4),
  38. [11] = ACTION_MODS_KEY(MOD_LSFT, KC_5),
  39. [12] = ACTION_MODS_KEY(MOD_LSFT, KC_6),
  40. [13] = ACTION_MODS_KEY(MOD_LSFT, KC_7),
  41. [14] = ACTION_MODS_KEY(MOD_LSFT, KC_8),
  42. [15] = ACTION_MODS_KEY(MOD_LSFT, KC_9),
  43. [16] = ACTION_MODS_KEY(MOD_LSFT, KC_0),
  44. [17] = ACTION_MODS_KEY(MOD_LSFT, KC_MINS),
  45. [18] = ACTION_MODS_KEY(MOD_LSFT, KC_EQL),
  46. [19] = ACTION_MODS_KEY(MOD_LSFT, KC_LBRC),
  47. [20] = ACTION_MODS_KEY(MOD_LSFT, KC_RBRC),
  48. [21] = ACTION_MODS_KEY(MOD_LSFT, KC_BSLS),
  49. };
  50. void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
  51. }