aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlucwastiaux <luc.wastiaux@xsmail.com>2018-07-27 05:21:55 +0800
committerDrashna Jaelre <drashna@live.com>2018-07-26 14:21:55 -0700
commitf2bf5a9a749c55c8941e3b17a2416631972b4cc7 (patch)
tree635b485c03c69035469a3fc46430cd7f29e2ba06
parent7a8c139d072ca8919e685affa1001b4199d52255 (diff)
downloadqmk_firmware-f2bf5a9a749c55c8941e3b17a2416631972b4cc7.tar.gz
qmk_firmware-f2bf5a9a749c55c8941e3b17a2416631972b4cc7.zip
Keymap: Ergodox Dvorak 42 key layout changes (#3500)
* add SCREEN_NAV layer for copy/pasting within screen * working readreg/paste macros * working read reg / paste macros * write log and tran patterns, and expand * add ls -la shortcut, add tab on combined layer * put delete word on the right pinky key on shell_nav layer * add TAB on the right side, add reset key * added Cloud9 macros * add cloud9 shortcuts to atreus layout * added BROWSER_CONTROL layer * finalized browser control layer * adding comment * add browser control layer to atreus * add flashing command line * remove the tab on combined layer * remove the tomouse * remove mouse layer, change log/tran expand patterns, cleanups * add dumptlog macro * add "delete to home" shortcut * fix conflict * remove unneeded mouse layer * add meh shortcuts on the browser_control layer * add/modify some macros * explain the various layers
-rw-r--r--keyboards/atreus/keymaps/dvorak_42_key/keymap.c52
-rw-r--r--keyboards/ergodox_ez/keymaps/dvorak_42_key/README.md7
-rw-r--r--keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c149
3 files changed, 59 insertions, 149 deletions
diff --git a/keyboards/atreus/keymaps/dvorak_42_key/keymap.c b/keyboards/atreus/keymaps/dvorak_42_key/keymap.c
index ba343ce4d..3672a40c1 100644
--- a/keyboards/atreus/keymaps/dvorak_42_key/keymap.c
+++ b/keyboards/atreus/keymaps/dvorak_42_key/keymap.c
@@ -5,15 +5,9 @@
5#define BASE 0 5#define BASE 0
6#define KEYNAV 1 6#define KEYNAV 1
7#define KEYSEL 2 7#define KEYSEL 2
8#define MOUSE 3 8#define COMBINED 3
9#define COMBINED 4 9#define BROWSER_CONTROL 4
10#define BROWSER_CONTROL 5
11 10
12// macros
13#define MOUSE_TOGGLE 1
14#define MOUSE_LOCK 2
15
16static bool mouse_lock = false;
17 11
18enum custom_keycodes { 12enum custom_keycodes {
19 PLACEHOLDER = SAFE_RANGE, // can always be here 13 PLACEHOLDER = SAFE_RANGE, // can always be here
@@ -63,18 +57,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
63 KC_TRNS, KC_TILD, KC_GRAVE, KC_CIRC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_0, KC_DOT, KC_PIPE, KC_BSLS 57 KC_TRNS, KC_TILD, KC_GRAVE, KC_CIRC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_0, KC_DOT, KC_PIPE, KC_BSLS
64 ), 58 ),
65 59
66 [MOUSE] = LAYOUT(
67 KC_TRNS, KC_PGUP, KC_MS_WH_UP, KC_UP, KC_TRNS, KC_UP, KC_HOME, KC_MS_U, KC_END, KC_MS_WH_UP,
68 KC_MS_ACCEL0, KC_PGDN, KC_MS_WH_DOWN, KC_DOWN, KC_TRNS, KC_DOWN, KC_MS_L, KC_MS_D, KC_MS_R, KC_MS_WH_DOWN,
69 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MEH(KC_X), MEH(KC_Y), MEH(KC_Z), KC_F5, RCTL(KC_W),
70 KC_TRNS, M(MOUSE_LOCK), KC_TRNS, KC_MS_ACCEL0, KC_TRNS, KC_BTN3, KC_BTN1, KC_BTN2, RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), RCTL(KC_T), LALT(KC_LEFT)
71 ),
72
73 [BROWSER_CONTROL] = LAYOUT( 60 [BROWSER_CONTROL] = LAYOUT(
74 KC_TRNS, KC_BTN3, KC_MS_U, KC_BTN1, KC_BTN2, KC_UP, KC_PGUP, KC_PGDN, KC_MS_WH_UP, KC_TRNS, 61 MEH(KC_0), KC_BTN3, KC_MS_U, KC_BTN1, KC_BTN2, KC_UP, KC_PGUP, KC_PGDN, KC_MS_WH_UP, MEH(KC_9),
75 KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_DOWN, RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), KC_MS_WH_DOWN, LALT(KC_LEFT), 62 MEH(KC_1), KC_MS_L, KC_MS_D, KC_MS_R, MEH(KC_6), KC_DOWN, RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), KC_MS_WH_DOWN, LALT(KC_LEFT),
76 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RCTL(KC_1), RCTL(KC_9), KC_F6, KC_F5, 63 MEH(KC_2), MEH(KC_3), MEH(KC_4), MEH(KC_5), MEH(KC_7), MEH(KC_8), RCTL(KC_1), RCTL(KC_9), KC_F6, KC_F5,
77 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RCTL(KC_W), RCTL(KC_T), RSFT(RCTL(KC_TAB)), KC_TRNS, KC_TRNS, KC_TRNS 64 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RCTL(KC_W), RCTL(KC_T), RSFT(RCTL(KC_TAB)), KC_TRNS, KC_TRNS, KC_TRNS
78 ), 65 ),
79}; 66};
80 67
@@ -116,30 +103,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
116 return true; 103 return true;
117} 104}
118 105
119const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
120{
121 // MACRODOWN only works in this function
122 switch(id) {
123 case MOUSE_TOGGLE:
124 if (record->event.pressed) {
125 layer_on(MOUSE);
126 } else {
127 if(!mouse_lock)
128 layer_off(MOUSE);
129 }
130 break;
131 case MOUSE_LOCK:
132 if (record->event.pressed)
133 {
134 if(mouse_lock)
135 {
136 mouse_lock = false;
137 layer_off(MOUSE);
138 }
139 else
140 mouse_lock = true;
141 }
142 break;
143 }
144 return MACRO_NONE;
145};
diff --git a/keyboards/ergodox_ez/keymaps/dvorak_42_key/README.md b/keyboards/ergodox_ez/keymaps/dvorak_42_key/README.md
index 4e5f25f09..5730a6105 100644
--- a/keyboards/ergodox_ez/keymaps/dvorak_42_key/README.md
+++ b/keyboards/ergodox_ez/keymaps/dvorak_42_key/README.md
@@ -12,7 +12,8 @@ Layers
12* BASE: basic dvorak layout 12* BASE: basic dvorak layout
13* KEYNAV: arrow-key navigation. Momentary toggle held by thumb allows the right hand to navigate through text as well as copy/paste/cut, page up/page down 13* KEYNAV: arrow-key navigation. Momentary toggle held by thumb allows the right hand to navigate through text as well as copy/paste/cut, page up/page down
14* KEYSEL: similar to KEYNAV, except for shift-selection 14* KEYSEL: similar to KEYNAV, except for shift-selection
15* COMBINED: this is a layer that combines numbers, brackets and special characters. !@#$%^&*( can be type by shift+COMBINED+1/2/3/etc.. 15* COMBINED: this is a layer that combines numbers, brackets and special characters. !@#$%^&*( can be typed by shift+COMBINED+1/2/3/etc..
16* MOUSE: mouse navigation, as well as browser tab-left/tab-right shortcuts 16* BROWSER_CONTROL: primarily browser left/right tab, open new tab/delete tab, but also mouse keys.
17* SHELL_NAV: Linux Bash shortcuts (move forward/backward in command line, Ctrl+C, recall last argument, etc 17* SHELL_NAV: Linux Bash shortcuts (move forward/backward in command line, Ctrl+C, recall last argument, etc
18* SHELL_SCREEN: Linux screen (run multiple terminals in one window) shortcuts such as open new tabs, switch between tabs \ No newline at end of file 18* SHELL_SCREEN: Linux screen (run multiple terminals in one window) shortcuts such as open new tabs, switch between tabs
19* SCREEN_NAV: special layer for copy/pasting within Linux screen, allows using various copy/paste buffers \ No newline at end of file
diff --git a/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c b/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c
index 088449e2f..94d035c6b 100644
--- a/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c
+++ b/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c
@@ -15,8 +15,6 @@
15// pushing dev branch 15// pushing dev branch
16// git push origin dev:dev 16// git push origin dev:dev
17 17
18static bool mouse_lock = false;
19
20enum custom_keycodes { 18enum custom_keycodes {
21 PLACEHOLDER = SAFE_RANGE, // can always be here 19 PLACEHOLDER = SAFE_RANGE, // can always be here
22 EPRM, 20 EPRM,
@@ -40,7 +38,12 @@ enum custom_keycodes {
40 SHELL_SCREEN_LIST, 38 SHELL_SCREEN_LIST,
41 SHELL_MKE, 39 SHELL_MKE,
42 SHELL_HTCSTATUS, 40 SHELL_HTCSTATUS,
41 SHELL_HTCBOUNCE,
42 SHELL_DUMPTLOG,
43 43
44 SHELL_EXPAND_OE_LOGPATTERN,
45 SHELL_EXPAND_OE_TRANPATTERN,
46
44 // Cloud9 macros 47 // Cloud9 macros
45 CLOUD9_TAB_LEFT, 48 CLOUD9_TAB_LEFT,
46 CLOUD9_TAB_RIGHT, 49 CLOUD9_TAB_RIGHT,
@@ -57,19 +60,15 @@ enum custom_keycodes {
57#define KEYSEL 2 // arrow navigation + shift (allow text selection) 60#define KEYSEL 2 // arrow navigation + shift (allow text selection)
58#define SHELL_NAV 3 // bash shortcuts 61#define SHELL_NAV 3 // bash shortcuts
59#define SHELL_SCREEN 4 // linux screen shortcuts 62#define SHELL_SCREEN 4 // linux screen shortcuts
60#define SCREEN_NAV 5 // navigate between linux screen tabs 63#define SCREEN_NAV 5 // navigate between linux screen tabs
61#define MOUSE 6 // mouse layer (can be locked with lock key), unmapped for now 64#define BROWSER_CONTROL 6 // control browser and mouse
62#define BROWSER_CONTROL 7 // control browser and mouse 65#define COMBINED 7 // combined numbers and symbols layer
63#define COMBINED 8 // combined numbers and symbols layer
64 66
65 67
66// macros 68// macros
67#define MOUSE_TOGGLE 1
68#define MOUSE_LOCK 2
69#define SCREEN_TAB_LEFT 4 69#define SCREEN_TAB_LEFT 4
70#define SCREEN_TAB_RIGHT 5 70#define SCREEN_TAB_RIGHT 5
71#define SCREEN_NEW_TAB 6 71#define SCREEN_NEW_TAB 6
72#define SWITCH_NDS 7
73#define SCREEN_COPY_MODE 8 72#define SCREEN_COPY_MODE 8
74#define SCREEN_PASTE 9 73#define SCREEN_PASTE 9
75#define SCREEN_RENAME 10 74#define SCREEN_RENAME 10
@@ -93,9 +92,8 @@ enum custom_keycodes {
93#define SCREEN_PASTEREG_1 28 92#define SCREEN_PASTEREG_1 28
94#define SCREEN_PASTEREG_2 29 93#define SCREEN_PASTEREG_2 29
95#define SCREEN_PASTEREG_3 30 94#define SCREEN_PASTEREG_3 30
96#define SHELL_WRITE_LOGPATTERN 31 95#define DEL_TO_HOME 36
97#define SHELL_WRITE_TRANPATTERN 32 96
98#define SHELL_EXPAND_PATTERN 33
99 97
100 98
101 99
@@ -175,13 +173,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
175 KC_TRNS,MEH(KC_B), CLOUD9_NAVIGATE, CLOUD9_TAB_LEFT, CLOUD9_TAB_RIGHT, CLOUD9_TAB_CLOSE, KC_TRNS, 173 KC_TRNS,MEH(KC_B), CLOUD9_NAVIGATE, CLOUD9_TAB_LEFT, CLOUD9_TAB_RIGHT, CLOUD9_TAB_CLOSE, KC_TRNS,
176 KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 174 KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
177 // left thumb cluster 175 // left thumb cluster
178 KC_TRNS,KC_TRNS,KC_TRNS,TO(MOUSE),KC_TRNS,KC_TRNS, 176 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
177
179 178
180 // right hand 179 // right hand
181 KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MEH(KC_G), 180 KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MEH(KC_G),
182 KC_TRNS,KC_NO, KC_HOME, KC_UP, KC_END, KC_PGUP, MEH(KC_H), 181 KC_TRNS,KC_NO, KC_HOME, KC_UP, KC_END, KC_PGUP, MEH(KC_H),
183 LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT), MEH(KC_I), 182 LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT), MEH(KC_I),
184 KC_TRNS,KC_NO, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), KC_PGDOWN, MEH(KC_J), 183 KC_TRNS,M(DEL_TO_HOME),RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), KC_PGDOWN, MEH(KC_J),
185 KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE), MEH(KC_K), 184 KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE), MEH(KC_K),
186 185
187 // right thumb cluster 186 // right thumb cluster
@@ -218,7 +217,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
218 [SHELL_NAV] = LAYOUT_ergodox( 217 [SHELL_NAV] = LAYOUT_ergodox(
219 // left hand 218 // left hand
220 KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 219 KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
221 KC_TRNS,KC_TRNS, SHELL_PGREP, SHELL_PLESS, SHELL_LESS, KC_TRNS, SHELL_H3, 220 KC_TRNS,KC_TRNS, SHELL_PGREP, SHELL_PLESS, SHELL_LESS, SHELL_HTCBOUNCE, SHELL_H3,
222 KC_TRNS,SHELL_MKE, SHELL_CDPRE, SHELL_LSLTR, SHELL_LS, SHELL_LSLA, 221 KC_TRNS,SHELL_MKE, SHELL_CDPRE, SHELL_LSLTR, SHELL_LS, SHELL_LSLA,
223 KC_TRNS,SHELL_SCREEN_LIST, SHELL_SCREENRD, SHELL_SCREEN_NEW, SHELL_TAILF, SHELL_HTCSTATUS, SHELL_AMMCOLO, 222 KC_TRNS,SHELL_SCREEN_LIST, SHELL_SCREENRD, SHELL_SCREEN_NEW, SHELL_TAILF, SHELL_HTCSTATUS, SHELL_AMMCOLO,
224 // bottom row 223 // bottom row
@@ -228,10 +227,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
228 KC_TRNS, 227 KC_TRNS,
229 KC_TRNS,KC_TRNS,KC_TRNS, 228 KC_TRNS,KC_TRNS,KC_TRNS,
230 // right hand 229 // right hand
231 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(SHELL_WRITE_TRANPATTERN), 230 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, SHELL_EXPAND_OE_TRANPATTERN,
232 RCTL(KC_L), RCTL(KC_W), KC_HOME, KC_UP, KC_END, KC_TRNS, M(SHELL_WRITE_LOGPATTERN), 231 RCTL(KC_L), RCTL(KC_W), KC_HOME, KC_UP, KC_END, KC_TRNS, SHELL_EXPAND_OE_LOGPATTERN,
233 LALT(KC_B), KC_LEFT, KC_DOWN, KC_RIGHT, LALT(KC_F), RCTL(KC_W), 232 LALT(KC_B), KC_LEFT, KC_DOWN, KC_RIGHT, LALT(KC_F), RCTL(KC_W),
234 RCTL(KC_C), RCTL(KC_U), LALT(KC_DOT), RCTL(KC_R), MEH(KC_V), RCTL(KC_K), M(SHELL_EXPAND_PATTERN), 233 RCTL(KC_C), RCTL(KC_U), LALT(KC_DOT), RCTL(KC_R), MEH(KC_V), RCTL(KC_K), SHELL_DUMPTLOG,
235 // bottom row (match functionality of base layer) 234 // bottom row (match functionality of base layer)
236 KC_BSPC, RCTL(KC_W), KC_DELETE, LALT(KC_D), RCTL(KC_U), 235 KC_BSPC, RCTL(KC_W), KC_DELETE, LALT(KC_D), RCTL(KC_U),
237 // thumb cluster 236 // thumb cluster
@@ -320,30 +319,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
320 KC_TRNS,KC_TRNS, 319 KC_TRNS,KC_TRNS,
321 KC_TRNS, 320 KC_TRNS,
322 KC_TRNS,KC_TRNS,KC_TRNS), 321 KC_TRNS,KC_TRNS,KC_TRNS),
323 322
324 323
325 [MOUSE] = LAYOUT_ergodox(
326 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
327 KC_TRNS, KC_TRNS, KC_PGUP, KC_MS_WH_UP, KC_UP, KC_TRNS, KC_TRNS,
328 KC_TRNS, KC_MS_ACCEL0, KC_PGDN, KC_MS_WH_DOWN, KC_DOWN, KC_TRNS,
329 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
330 KC_TRNS, KC_TRNS, M(MOUSE_LOCK), KC_TRNS, KC_MS_ACCEL0,
331
332 KC_TRNS, KC_TRNS,
333 KC_TRNS,
334 KC_TRNS, KC_BTN3, KC_TRNS,
335 // right hand
336 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
337 KC_TRNS, KC_UP, KC_HOME, KC_MS_U, KC_END, KC_MS_WH_UP, KC_TRNS,
338 KC_DOWN, KC_MS_L, KC_MS_D, KC_MS_R, KC_MS_WH_DOWN, KC_TRNS,
339 KC_TRNS, MEH(KC_X), MEH(KC_Y), MEH(KC_Z), KC_F5, RCTL(KC_W), KC_TRNS,
340 // browser tab control
341 RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), RCTL(KC_T), LALT(KC_LEFT), KC_TRNS,
342 KC_TRNS, KC_TRNS,
343 KC_TRNS,
344 KC_TRNS, KC_BTN1, KC_BTN2
345 ),
346
347 [BROWSER_CONTROL] = LAYOUT_ergodox( 324 [BROWSER_CONTROL] = LAYOUT_ergodox(
348 // left hand 325 // left hand
349 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 326 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
@@ -379,26 +356,6 @@ const uint16_t PROGMEM fn_actions[] = {
379const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 356const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
380{ 357{
381 switch(id) { 358 switch(id) {
382 case MOUSE_TOGGLE:
383 if (record->event.pressed) {
384 layer_on(MOUSE);
385 } else {
386 if(!mouse_lock)
387 layer_off(MOUSE);
388 }
389 break;
390 case MOUSE_LOCK:
391 if (record->event.pressed)
392 {
393 if(mouse_lock)
394 {
395 mouse_lock = false;
396 layer_off(MOUSE);
397 }
398 else
399 mouse_lock = true;
400 }
401 break;
402 case SCREEN_TAB_LEFT: 359 case SCREEN_TAB_LEFT:
403 if (record->event.pressed) { 360 if (record->event.pressed) {
404 return MACRO( D(LCTL), T(A), U(LCTL), T(P), END); 361 return MACRO( D(LCTL), T(A), U(LCTL), T(P), END);
@@ -478,40 +435,19 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
478 if (record->event.pressed) { 435 if (record->event.pressed) {
479 return MACRO( D(LCTL), T(A), U(LCTL), T(RBRC), END); 436 return MACRO( D(LCTL), T(A), U(LCTL), T(RBRC), END);
480 } 437 }
481 break; 438 break;
482 439
483 case SHELL_WRITE_LOGPATTERN: 440 case DEL_TO_HOME:
484 if (record->event.pressed) { 441 if (record->event.pressed) {
485 return MACRO( D(LSFT), 442 return MACRO(
486 T(8), 443 // delete to the beginning of the line
487 T(8), 444 D(LSFT), T(HOME), U(LSFT),
488 U(LSFT), 445 T(DELETE),
489 T(L), 446 END);
490 T(O), 447 }
491 T(G), 448 break;
492 T(LEFT), 449
493 T(LEFT), 450
494 T(LEFT),
495 T(LEFT),
496 END);
497 }
498 break;
499
500 case SHELL_WRITE_TRANPATTERN:
501 if (record->event.pressed) {
502 return MACRO( D(LSFT),
503 T(8),
504 T(8),
505 U(LSFT), T(T), T(R), T(A), T(N), T(LEFT), T(LEFT), T(LEFT), T(LEFT), T(LEFT), END);
506 }
507 break;
508
509 case SHELL_EXPAND_PATTERN:
510 if (record->event.pressed) {
511 return MACRO( D(LALT), T(F), U(LALT), D(LCTL), T(X), U(LCTL), D(LSFT), T(8), D(LSFT), END);
512 }
513 break;
514
515 } 451 }
516 return MACRO_NONE; 452 return MACRO_NONE;
517}; 453};
@@ -599,15 +535,29 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
599 return true; 535 return true;
600 break; 536 break;
601 case SHELL_MKE: 537 case SHELL_MKE:
602 SEND_STRING("mke\n"); 538 SEND_STRING("mki -j8\n");
603 return true; 539 return true;
604 break; 540 break;
605 case SHELL_HTCSTATUS: 541 case SHELL_HTCSTATUS:
606 SEND_STRING("htcStatus -j "); 542 SEND_STRING("htcStatus -j ");
607 return true; 543 return true;
608 break; 544 break;
609 // Cloud9 macros 545 case SHELL_HTCBOUNCE:
610 case CLOUD9_TAB_LEFT: 546 SEND_STRING("htcBounce -j ");
547 return true;
548 break;
549 case SHELL_EXPAND_OE_LOGPATTERN:
550 SEND_STRING(SS_TAP(X_LEFT)"*CQW_HKEX"SS_TAP(X_END)"*.log"SS_LCTRL("x")SS_LSFT("8"));
551 break;
552 case SHELL_EXPAND_OE_TRANPATTERN:
553 SEND_STRING(SS_TAP(X_LEFT)"*CQW_HKEX"SS_TAP(X_END)"*.tran"SS_LCTRL("x")SS_LSFT("8"));
554 break;
555 case SHELL_DUMPTLOG:
556 SEND_STRING(" | dumptlog - ");
557 return true;
558 break;
559 // Cloud9 macros
560 case CLOUD9_TAB_LEFT:
611 SEND_STRING(SS_LCTRL("[")); 561 SEND_STRING(SS_LCTRL("["));
612 return true; 562 return true;
613 break; 563 break;
@@ -664,8 +614,7 @@ void matrix_scan_user(void) {
664 case SCREEN_NAV: 614 case SCREEN_NAV:
665 ergodox_right_led_3_on(); 615 ergodox_right_led_3_on();
666 break; 616 break;
667 case MOUSE: 617 case BROWSER_CONTROL:
668 case BROWSER_CONTROL:
669 ergodox_right_led_2_on(); 618 ergodox_right_led_2_on();
670 ergodox_right_led_3_on(); 619 ergodox_right_led_3_on();
671 break; 620 break;