Guest User

Untitled

a guest
Dec 19th, 2018
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. #include QMK_KEYBOARD_H
  2. #include "action_layer.h"
  3. #include "../../backlight_staryu.h"
  4.  
  5. #define IS_LAYER_ON(layer) (layer_state & (1UL << (layer)))
  6.  
  7. enum layers {
  8. _LAYER0,
  9. _LAYER1,
  10. _LAYER2,
  11. _LAYER3
  12. };
  13.  
  14. enum custom_keycodes {
  15. GIT_STATUS = SAFE_RANGE,
  16. GIT_ADD,
  17. GIT_COMMIT,
  18. GIT_PUSH,
  19. GIT_REBASE,
  20. GIT_LG,
  21. };
  22.  
  23. bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  24. if (record->event.pressed) {
  25. switch(keycode) {
  26. case GIT_STATUS:
  27. SEND_STRING("git status\n");
  28. return false;
  29. case GIT_ADD:
  30. SEND_STRING("git add --all\n");
  31. return false;
  32. case GIT_COMMIT:
  33. SEND_STRING("git commit -m "SS_DOWN(X_LSHIFT)SS_TAP(X_QUOTE)SS_UP(X_LSHIFT));
  34. return false;
  35. case GIT_PUSH:
  36. SEND_STRING("git push\n");
  37. return false;
  38. case GIT_REBASE:
  39. SEND_STRING("git rebase origin/master\n");
  40. return false;
  41. case GIT_LG:
  42. SEND_STRING("git lg\n");
  43. return false;
  44. }
  45. } else {
  46. clear_keyboard();
  47. }
  48. return true;
  49. }
  50.  
  51. #define _______ KC_TRNS
  52. #define XXXXXXX KC_NO
  53.  
  54. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  55. [_LAYER0] = LAYOUT(
  56. KC_UP, TO(_LAYER1),
  57. KC_LEFT, KC_DOWN, KC_RIGHT
  58. ),
  59. [_LAYER1] = LAYOUT(
  60. GIT_STATUS, TO(_LAYER2),
  61. GIT_ADD, GIT_COMMIT, KC_ENTER
  62. ),
  63. [_LAYER2] = LAYOUT(
  64. GIT_PUSH, TO(_LAYER3),
  65. GIT_LG, GIT_REBASE, KC_ENTER
  66. ),
  67. [_LAYER3] = LAYOUT(
  68. RGB_TOG, TO(_LAYER0),
  69. RGB_SAI, RGB_VAD, RGB_VAI
  70. )
  71. };
  72.  
  73. const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
  74. return MACRO_NONE ;
  75. }
  76.  
  77. void matrix_init_user(void) {
  78. }
  79.  
  80. void matrix_scan_user(void)
  81. { // runs frequently to update info
  82.  
  83. if(IS_LAYER_ON(0)) {
  84. rgblight_sethsv_noeeprom_gold();
  85. } else if (IS_LAYER_ON(1)) {
  86. rgblight_sethsv_noeeprom_springgreen();
  87. } else if (IS_LAYER_ON(2)) {
  88. rgblight_sethsv_noeeprom_purple();
  89. } else if (IS_LAYER_ON(3)) {
  90. rgblight_sethsv_noeeprom_blue();
  91. }
  92. }
  93.  
  94. void led_set_user(uint8_t usb_led) {
  95. }
Add Comment
Please, Sign In to add comment