keymap.c 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. /* Copyright 2020 Reid Sox-Harris
  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. enum layer_names {
  18. _QWERTY,
  19. _MOD
  20. };
  21. // Keymaps Shortcut Defines
  22. #define ESC_MOD LT(_MOD, KC_ESC)
  23. #define MOD TG(_MOD)
  24. #define SQRT RALT(KC_V) // (macOS) Prints √
  25. #define NEQL RALT(KC_EQL) // (macOS) Prints ≠
  26. #define PM RALT(KC_PLUS) // (macOS) Prints ±
  27. #define PI RALT(KC_P) // (macOS) Prints π
  28. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  29. [_QWERTY] = LAYOUT_numpad_5x4_split_plus(
  30. // ┌────────┬────────┬────────┬────────┐
  31. ESC_MOD, KC_PSLS, KC_PAST, KC_PEQL,
  32. // ├────────┼────────┼────────┼────────┤
  33. KC_P7, KC_P8, KC_P9, KC_PPLS,
  34. // ├────────┼────────┼────────┼────────┤
  35. KC_P4, KC_P5, KC_P6, KC_PMNS,
  36. // ├────────┼────────┼────────┼────────┤
  37. KC_P1, KC_P2, KC_P3,
  38. // ├─────────────────┼────────┼ ┤
  39. KC_P0, KC_PDOT, KC_PENT
  40. // ├─────────────────┴────────┴────────┘
  41. ),
  42. [_MOD] = LAYOUT_numpad_5x4_split_plus(
  43. // ┌────────┬────────┬────────┬────────┐
  44. MOD, SQRT, KC_CIRC, NEQL,
  45. // ├────────┼────────┼────────┼────────┤
  46. KC_P7, KC_P8, KC_P9, PM,
  47. // ├────────┼────────┼────────┼────────┤
  48. KC_P4, KC_P5, KC_P6, PI,
  49. // ├────────┼────────┼────────┼────────┤
  50. KC_P1, KC_P2, KC_P3,
  51. // ├─────────────────┼────────┼ ┤
  52. KC_P0, KC_BSPC, KC_TAB
  53. // ├─────────────────┴────────┴────────┘
  54. )
  55. };