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.

keymap_poker_set.c 4.7KB

hace 11 años
hace 11 años
hace 11 años
hace 11 años
hace 11 años
hace 11 años
hace 11 años
hace 11 años
hace 11 años
hace 11 años
hace 11 años
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. #include "keymap_common.h"
  2. // Poker fix with set(state transition)
  3. // Fn + Esc = `
  4. // Fn + {left, down, up, right} = {home, pgdown, pgup, end}
  5. const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  6. /* 0: qwerty */
  7. KEYMAP_ANSI(
  8. GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \
  9. TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, \
  10. LCTL,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, \
  11. LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RSFT, \
  12. LCTL,LGUI,LALT, SPC, FN0, RGUI,APP, RCTL),
  13. /* 1: Poker with Arrow */
  14. KEYMAP_ANSI(
  15. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  16. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  17. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \
  18. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, UP, \
  19. TRNS,TRNS,TRNS, TRNS, FN1, LEFT,DOWN,RGHT),
  20. /* 2: Poker with Esc */
  21. KEYMAP_ANSI(
  22. ESC, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  23. 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, \
  25. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \
  26. TRNS,TRNS,TRNS, TRNS, FN2, TRNS,TRNS,TRNS),
  27. /* 3: Poker with Arrow and Esc */
  28. KEYMAP_ANSI(
  29. ESC, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  30. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, \
  31. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, \
  32. TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, UP, \
  33. TRNS,TRNS,TRNS, TRNS, FN3, LEFT,DOWN,RGHT),
  34. /* 4: Poker Fn'd */
  35. KEYMAP_ANSI(
  36. ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, \
  37. TRNS,FN6, UP, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,CALC,TRNS,HOME,INS, TRNS, \
  38. TRNS,LEFT,DOWN,RGHT,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,FN8, END, TRNS, \
  39. TRNS,DEL, TRNS,WHOM,MUTE,VOLU,VOLD,TRNS,PGUP,PGDN,DEL, TRNS, \
  40. TRNS,TRNS,TRNS, FN5, FN4, TRNS,TRNS,TRNS),
  41. /* 5: Poker Fn'd arrow */
  42. KEYMAP_ANSI(
  43. ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, \
  44. TRNS,FN7, UP, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,CALC,TRNS,HOME,INS, TRNS, \
  45. TRNS,LEFT,DOWN,RGHT,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,FN8, END, TRNS, \
  46. TRNS,DEL, TRNS,WHOM,MUTE,VOLU,VOLD,TRNS,PGUP,PGDN,DEL, PGUP, \
  47. TRNS,TRNS,TRNS, FN4, FN5, HOME,PGDN,END),
  48. /* 6: Poker Fn'd Esc */
  49. KEYMAP_ANSI(
  50. GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, \
  51. TRNS,FN4, UP, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,CALC,TRNS,HOME,INS, TRNS, \
  52. TRNS,LEFT,DOWN,RGHT,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,FN8, END, TRNS, \
  53. TRNS,DEL, TRNS,WHOM,MUTE,VOLU,VOLD,TRNS,PGUP,PGDN,DEL, TRNS, \
  54. TRNS,TRNS,TRNS, FN7, FN6, TRNS,TRNS,TRNS),
  55. /* 7: Poker Fn'd Arrow + Esc */
  56. KEYMAP_ANSI(
  57. GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, \
  58. TRNS,FN5, UP, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,CALC,TRNS,HOME,INS, TRNS, \
  59. TRNS,LEFT,DOWN,RGHT,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,FN8, END, TRNS, \
  60. TRNS,DEL, TRNS,WHOM,MUTE,VOLU,VOLD,TRNS,PGUP,PGDN,DEL, PGUP, \
  61. TRNS,TRNS,TRNS, FN6, FN7, HOME,PGDN,END),
  62. };
  63. /*
  64. * Fn action definition
  65. */
  66. const action_t PROGMEM fn_actions[] = {
  67. /* Poker Layout */
  68. [0] = ACTION_LAYER_SET(4, ON_PRESS), // FN0 move to Fn'd when press
  69. [1] = ACTION_LAYER_SET(5, ON_PRESS), // FN1 move to Fn'd arrow when press
  70. [2] = ACTION_LAYER_SET(6, ON_PRESS), // FN2 move to Fn'd Esc when press
  71. [3] = ACTION_LAYER_SET(7, ON_PRESS), // FN3 move to Fn'd arrow + Esc when press
  72. //[4] = ACTION_LAYER_CLEAR(ON_RELEASE), // FN4 clear overlay when release
  73. [4] = ACTION_LAYER_SET(0, ON_RELEASE), // FN4 clear overlay when release
  74. [5] = ACTION_LAYER_SET(1, ON_RELEASE), // FN5 move to arrow when release
  75. [6] = ACTION_LAYER_SET(2, ON_RELEASE), // FN6 move to Esc when release
  76. [7] = ACTION_LAYER_SET(3, ON_RELEASE), // FN7 move to arrow + Esc when release
  77. [8] = ACTION_MODS_KEY(MOD_RCTL|MOD_RSFT, KC_ESC), // FN8 Task(RControl,RShift+Esc)
  78. };