combos.c 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. /* Copyright 2020 Sergi Meseguer <zigotica@gmail.com>
  2. This program is free software: you can redistribute it and/or modify
  3. it under the terms of the GNU General Public License as published by
  4. the Free Software Foundation, either version 2 of the License, or
  5. (at your option) any later version.
  6. This program is distributed in the hope that it will be useful,
  7. but WITHOUT ANY WARRANTY; without even the implied warranty of
  8. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  9. GNU General Public License for more details.
  10. You should have received a copy of the GNU General Public License
  11. along with this program. If not, see <http://www.gnu.org/licenses/>.
  12. */
  13. #include "combos.h"
  14. enum combos {
  15. EM_EMAIL,
  16. CL_CAPSL
  17. };
  18. const uint16_t PROGMEM email_combo[] = {LT(_SYM, KC_E), KC_M, COMBO_END};
  19. const uint16_t PROGMEM caps_combo[] = {KC_C, KC_L, COMBO_END};
  20. combo_t key_combos[] = {
  21. [EM_EMAIL] = COMBO_ACTION(email_combo),
  22. [CL_CAPSL] = COMBO(caps_combo, KC_CAPS),
  23. };
  24. void process_combo_event(uint16_t combo_index, bool pressed) {
  25. switch(combo_index) {
  26. case EM_EMAIL:
  27. if (pressed) {
  28. SEND_STRING("zigotica@gmail.com");
  29. }
  30. break;
  31. }
  32. }