aboutsummaryrefslogtreecommitdiff
path: root/users/noroadsleft/noroadsleft.c
diff options
context:
space:
mode:
Diffstat (limited to 'users/noroadsleft/noroadsleft.c')
-rw-r--r--users/noroadsleft/noroadsleft.c83
1 files changed, 13 insertions, 70 deletions
diff --git a/users/noroadsleft/noroadsleft.c b/users/noroadsleft/noroadsleft.c
index 82b0b0568..28bfa9e6c 100644
--- a/users/noroadsleft/noroadsleft.c
+++ b/users/noroadsleft/noroadsleft.c
@@ -17,11 +17,6 @@
17#include "noroadsleft.h" 17#include "noroadsleft.h"
18#include "version.h" 18#include "version.h"
19 19
20/*******************
21** MODIFIER MASKS **
22*******************/
23bool macroMode = 0;
24
25__attribute__((weak)) 20__attribute__((weak))
26bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { return true; }; 21bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { return true; };
27 22
@@ -73,60 +68,35 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
73 return false; 68 return false;
74 case M_SALL: 69 case M_SALL:
75 if (record->event.pressed) { 70 if (record->event.pressed) {
76 if ( macroMode == 1 ) { 71 tap_code16(C(KC_A));
77 SEND_STRING(SS_LGUI("a"));
78 } else {
79 SEND_STRING(SS_LCTL("a"));
80 }
81 } 72 }
82 return false; 73 return false;
83 case M_UNDO: 74 case M_UNDO:
84 if (record->event.pressed) { 75 if (record->event.pressed) {
85 if ( macroMode == 1 ) { 76 register_code(KC_LCTL);
86 if ( get_mods() & MOD_MASK_SHIFT ) { 77 register_code(KC_Z);
87 SEND_STRING(SS_LSFT(SS_LGUI("z"))); 78 } else {
88 } else { 79 unregister_code(KC_Z);
89 SEND_STRING(SS_LGUI("z")); 80 unregister_code(KC_LCTL);
90 }
91 } else {
92 SEND_STRING(SS_LCTL("z"));
93 }
94 } 81 }
95 return false; 82 return false;
96 case M_CUT: 83 case M_CUT:
97 if (record->event.pressed) { 84 if (record->event.pressed) {
98 if ( macroMode == 1 ) { 85 tap_code16(C(KC_X));
99 SEND_STRING(SS_LGUI("x"));
100 } else {
101 SEND_STRING(SS_LCTL("x"));
102 }
103 } 86 }
104 return false; 87 return false;
105 case M_COPY: 88 case M_COPY:
106 if (record->event.pressed) { 89 if (record->event.pressed) {
107 if ( macroMode == 1 ) { 90 tap_code16(C(KC_C));
108 SEND_STRING(SS_LGUI("c"));
109 } else {
110 SEND_STRING(SS_LCTL("c"));
111 }
112 } 91 }
113 return false; 92 return false;
114 case M_PASTE: 93 case M_PASTE:
115 if (record->event.pressed) { 94 if (record->event.pressed) {
116 if ( macroMode == 1 ) { 95 register_code(KC_LCTL);
117 if ( get_mods() & MOD_MASK_SHIFT ) { 96 register_code(KC_V);
118 SEND_STRING(SS_LSFT(SS_LALT(SS_LGUI("v")))); 97 } else {
119 } else { 98 unregister_code(KC_V);
120 SEND_STRING(SS_LGUI("v")); 99 unregister_code(KC_LCTL);
121 }
122 } else {
123 SEND_STRING(SS_LCTL("v"));
124 }
125 }
126 return false;
127 case M_MDSWP:
128 if (record->event.pressed) {
129 macroMode ^= 1;
130 } 100 }
131 return false; 101 return false;
132 case KC_1 ... KC_0: 102 case KC_1 ... KC_0:
@@ -159,33 +129,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
159 } 129 }
160 } 130 }
161 return false; 131 return false;
162 case KC_PSCR:
163 if (record->event.pressed) {
164 if ( macroMode == 1 ) {
165 tap_code16(G(S(KC_3)));
166 } else {
167 tap_code(KC_PSCR);
168 }
169 }
170 return false;
171 case KC_HOME:
172 if (record->event.pressed) {
173 if ( macroMode == 1 ) {
174 tap_code16(G(KC_LEFT));
175 } else {
176 tap_code(KC_HOME);
177 }
178 }
179 return false;
180 case KC_END:
181 if (record->event.pressed) {
182 if ( macroMode == 1 ) {
183 tap_code16(G(KC_RGHT));
184 } else {
185 tap_code(KC_END);
186 }
187 }
188 return false;
189 } // switch() 132 } // switch()
190 return true; 133 return true;
191}; 134};