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.

55 lines
1.4 KiB

  1. /* Copyright 2020 Janos Daniel Reibl <janos.daniel.reibl@protonmail.com> @riblee
  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. #pragma once
  17. #include QMK_KEYBOARD_H
  18. enum preonic_layers {
  19. _QWERTY,
  20. _COLEMAK,
  21. _DVORAK,
  22. _LOWER,
  23. _RAISE,
  24. _ADJUST
  25. };
  26. enum preonic_keycodes {
  27. QWERTY = SAFE_RANGE,
  28. COLEMAK,
  29. DVORAK,
  30. BACKLIT
  31. };
  32. #define LOWER MO(_LOWER)
  33. #define RAISE MO(_RAISE)
  34. // Tap Dance declarations
  35. enum {
  36. TD_A,
  37. TD_E,
  38. TD_I,
  39. TD_O,
  40. TD_U,
  41. };
  42. void dance_key_a (qk_tap_dance_state_t *, void *);
  43. void dance_key_e (qk_tap_dance_state_t *, void *);
  44. void dance_key_i (qk_tap_dance_state_t *, void *);
  45. void dance_key_o (qk_tap_dance_state_t *, void *);
  46. void dance_key_u (qk_tap_dance_state_t *, void *);
  47. layer_state_t layer_state_set_user(layer_state_t);
  48. bool process_record_user(uint16_t keycode, keyrecord_t *record);