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.

85 lines
2.4 KiB

  1. /* Copyright 2021 Joshua T.
  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. // Transparent, but indicates that this key must be blocked (for example, a layer shift key)
  19. #define ooooooo KC_TRNS
  20. #define SFT_TAB LSFT(KC_TAB)
  21. #define WIN_TAB LGUI(KC_TAB)
  22. #define WIN_L LGUI(KC_L)
  23. #define WIN_V LGUI(KC_V)
  24. #define ALT_F4 LALT(KC_F4)
  25. #define CTL_DEL LCTL_T(KC_DEL)
  26. #define CTL_ESC CTL_T(KC_ESC)
  27. #define ALT_ENT ALT_T(KC_ENT)
  28. #define ALT_TAB ALT_T(KC_TAB)
  29. #define OSM_LSF OSM(MOD_LSFT)
  30. #define OSM_RSF OSM(MOD_RSFT)
  31. // OS shortcuts (Windows)
  32. #define OS_COPY LCTL(KC_C)
  33. #define OS_PAST LCTL(KC_V)
  34. #define OS_CUT LCTL(KC_X)
  35. #define OS_UNDO LCTL(KC_Z)
  36. #define OS_SALL LCTL(KC_A)
  37. #define OS_FIND LCTL(KC_F)
  38. // Home row modifiers
  39. #define GUI_A LGUI_T(KC_A)
  40. #define ALT_R LALT_T(KC_R)
  41. #define SFT_S LSFT_T(KC_S)
  42. #define CRT_T LCTL_T(KC_T) // we can't call this CTL_T because that name is taken!
  43. #define CRT_N RCTL_T(KC_N)
  44. #define SFT_E RSFT_T(KC_E)
  45. #define ALT_I RALT_T(KC_I)
  46. #define GUI_O RGUI_T(KC_O)
  47. // Mouse keys
  48. #define M_UP KC_MS_UP
  49. #define M_DOWN KC_MS_DOWN
  50. #define M_LEFT KC_MS_LEFT
  51. #define M_RIGHT KC_MS_RIGHT
  52. #define M_LCLIK KC_MS_BTN1
  53. #define M_RCLIK KC_MS_BTN2
  54. #define M_MCLIK KC_MS_BTN3
  55. #define M_WHLUP KC_WH_U
  56. #define M_WHLDN KC_WH_D
  57. // Windows 10 shortcuts: change desktop to the left/right
  58. #define DESKLFT LCTL(LGUI(KC_LEFT))
  59. #define DESKRGT LCTL(LGUI(KC_RGHT))
  60. // Application-specific shortcuts
  61. // Search: defined in Everything Search Engine as the keypress to show/hide the window
  62. #define SEARCH HYPR(KC_S)
  63. // Microsoft PowerToys hotkeys
  64. // https://github.com/microsoft/PowerToys
  65. #define PTYRUN LALT(KC_SPC) // PowerToys Run
  66. #define PTYZONE LGUI(KC_GRV) // PowerToys FancyZones
  67. #define PTYCOLR LGUI(LSFT(KC_C)) // PowerToys ColorPicker