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.

49 lines
1.4 KiB

  1. /*
  2. Copyright 2020 Dan White <opensource@bluetufa.com>
  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. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. GNU General Public License for more details.
  11. You should have received a copy of the GNU General Public License
  12. along with this program. If not, see <http://www.gnu.org/licenses/>.
  13. */
  14. #include "badger.h"
  15. bool _capsLockState;
  16. __attribute__ ((weak))
  17. void keyboard_post_init_user(void) {
  18. _capsLockState = false;
  19. }
  20. __attribute__ ((weak))
  21. bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  22. switch (keycode) {
  23. case CS_RIGHT:
  24. if (record->event.pressed) {
  25. SEND_STRING(SS_LALT(SS_TAP(X_B)SS_TAP(X_ENTER)));
  26. return false;
  27. }
  28. break;
  29. case CS_DOWN:
  30. if (record->event.pressed) {
  31. SEND_STRING(SS_LALT(SS_TAP(X_V)SS_TAP(X_ENTER)));
  32. return false;
  33. }
  34. break;
  35. case KC_CAPS:
  36. if (record->event.pressed) {
  37. _capsLockState = !_capsLockState;
  38. return true;
  39. }
  40. break;
  41. default:
  42. return true;
  43. }
  44. return true;
  45. }