keymap.c 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. /* Copyright 2018 Jack Humbert
  2. *
  3. * This program is free software: you can redistribute it and/or modify
  4. * it under the terms of the GNU General Public License as published by
  5. * the Free Software Foundation, either version 2 of the License, or
  6. * (at your option) any later version.
  7. *
  8. * This program is distributed in the hope that it will be useful,
  9. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. * GNU General Public License for more details.
  12. *
  13. * You should have received a copy of the GNU General Public License
  14. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  15. */
  16. #include QMK_KEYBOARD_H
  17. char oled_layer[20];
  18. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  19. [0] = LAYOUT(
  20. KC_KP_7, KC_KP_8, KC_KP_9,
  21. KC_KP_4, KC_KP_5, KC_KP_6,
  22. KC_KP_1, KC_KP_2, KC_KP_3,
  23. MO(1), KC_KP_0, KC_KP_DOT
  24. ),
  25. [1] = LAYOUT(
  26. KC_TRNS, KC_TRNS, KC_TRNS,
  27. KC_TRNS, KC_TRNS, KC_TRNS,
  28. KC_TRNS, KC_TRNS, KC_TRNS,
  29. KC_TRNS, KC_TRNS, KC_TRNS
  30. ),
  31. [2] = LAYOUT(
  32. KC_TRNS, KC_TRNS, KC_TRNS,
  33. KC_TRNS, KC_TRNS, KC_TRNS,
  34. KC_TRNS, KC_TRNS, KC_TRNS,
  35. KC_TRNS, KC_TRNS, KC_TRNS
  36. ),
  37. [3] = LAYOUT(
  38. KC_TRNS, KC_TRNS, KC_TRNS,
  39. KC_TRNS, KC_TRNS, KC_TRNS,
  40. KC_TRNS, KC_TRNS, KC_TRNS,
  41. KC_TRNS, KC_TRNS, KC_TRNS
  42. ),
  43. [4] = LAYOUT(
  44. KC_TRNS, KC_TRNS, KC_TRNS,
  45. KC_TRNS, KC_TRNS, KC_TRNS,
  46. KC_TRNS, KC_TRNS, KC_TRNS,
  47. KC_TRNS, KC_TRNS, KC_TRNS
  48. ),
  49. [5] = LAYOUT(
  50. KC_TRNS, KC_TRNS, KC_TRNS,
  51. KC_TRNS, KC_TRNS, KC_TRNS,
  52. KC_TRNS, KC_TRNS, KC_TRNS,
  53. KC_TRNS, KC_TRNS, KC_TRNS
  54. ),
  55. [6] = LAYOUT(
  56. KC_TRNS, KC_TRNS, KC_TRNS,
  57. KC_TRNS, KC_TRNS, KC_TRNS,
  58. KC_TRNS, KC_TRNS, KC_TRNS,
  59. KC_TRNS, KC_TRNS, KC_TRNS
  60. ),
  61. [7] = LAYOUT(
  62. KC_TRNS, KC_TRNS, KC_TRNS,
  63. KC_TRNS, KC_TRNS, KC_TRNS,
  64. KC_TRNS, KC_TRNS, KC_TRNS,
  65. KC_TRNS, KC_TRNS, KC_TRNS
  66. )
  67. };
  68. #ifdef OLED_DRIVER_ENABLE
  69. oled_rotation_t oled_init_user(oled_rotation_t rotation) {
  70. return OLED_ROTATION_270;
  71. }
  72. void oled_task_user(void) {
  73. // Host Keyboard Layer Status
  74. sprintf(oled_layer,"Layer\nL: %d\n",get_highest_layer(layer_state));
  75. oled_write(oled_layer,false);
  76. // Host Keyboard LED Status
  77. led_t led_state = host_keyboard_led_state();
  78. oled_write_P(led_state.num_lock ? PSTR("NLCK ") : PSTR(" "), false);
  79. oled_write_P(led_state.caps_lock ? PSTR("CAPS ") : PSTR(" "), false);
  80. oled_write_P(led_state.scroll_lock ? PSTR("SCRLK") : PSTR(" "), false);
  81. }
  82. #endif