aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlucwastiaux <luc.wastiaux@xsmail.com>2017-11-07 01:07:21 +0800
committerJack Humbert <jack.humb@gmail.com>2017-11-06 12:07:21 -0500
commit785474670426c9325fcf82a852618053f3dd1713 (patch)
tree83c42975d6927bba59825bc802e6ff8f0ecd6270
parent245b3376d6fb915f4694053121d9cb1f1decc888 (diff)
downloadqmk_firmware-785474670426c9325fcf82a852618053f3dd1713.tar.gz
qmk_firmware-785474670426c9325fcf82a852618053f3dd1713.zip
Ergodox EZ and Atreus 42 key dvorak layout updates (#1964)
* importing 42 key dvorak layout * added comment for build instructions * adding atreus dvorak 42 key layout * added readme * add readme * build instructions * additional MEH shortcuts * added shifted symbols on symbols layer * working extra symbols on COMBINED layer * bring atreus layout inline with the ergodox one * add necessary macros * working ls macro * added more shell macros * added screen rename / screen number macros * add ctrl-a key in shell-nav to use screen more easily * added shell screen layer * assign screen switching macros to screen layer * define all screen switching macros * more screen-related shortcuts added on shell screen layer * change shell nav bottom right row to match base layer (backspace / delete) * remove some mappings on SHELL_NAV layer as they are now in the screen layer * added more screen macros
-rw-r--r--keyboards/atreus/keymaps/dvorak_42_key/keymap.c24
-rw-r--r--keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c219
2 files changed, 202 insertions, 41 deletions
diff --git a/keyboards/atreus/keymaps/dvorak_42_key/keymap.c b/keyboards/atreus/keymaps/dvorak_42_key/keymap.c
index 02980378d..b2ea29043 100644
--- a/keyboards/atreus/keymaps/dvorak_42_key/keymap.c
+++ b/keyboards/atreus/keymaps/dvorak_42_key/keymap.c
@@ -30,24 +30,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
30}, 30},
31 31
32[KEYNAV] = { 32[KEYNAV] = {
33 {KC_ESC, MEH(KC_A), RCTL(KC_Z), RCTL(KC_S), MEH(KC_B), KC_TRNS, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, }, 33 {KC_ESC, MEH(KC_F9), RCTL(KC_Z), RCTL(KC_S), MEH(KC_F10), KC_TRNS, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, },
34 {MEH(KC_C), MEH(KC_D), RSFT(KC_TAB), KC_TAB, MEH(KC_E), KC_TRNS, LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT), }, 34 {MEH(KC_F11), MEH(KC_F12), RSFT(KC_TAB), KC_TAB, MEH(KC_A), KC_TRNS, LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT), },
35 {MEH(KC_F), MEH(KC_G), MEH(KC_H), MEH(KC_I), MEH(KC_J), KC_TRNS, KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), KC_PGDOWN, }, 35 {MEH(KC_B), MEH(KC_C), MEH(KC_D), MEH(KC_E), MEH(KC_F), KC_TRNS, KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), KC_PGDOWN, },
36 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_ENTER, KC_SPACE, KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE), } 36 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_ENTER, KC_SPACE, KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE), }
37}, 37},
38 38
39[KEYSEL] = { 39[KEYSEL] = {
40 {KC_TRNS, KC_TRNS, RCTL(KC_Z), RCTL(KC_S), KC_TRNS, KC_TRNS, KC_TRNS, RSFT(KC_HOME), RSFT(KC_UP), RSFT(KC_END), RSFT(KC_PGUP), }, 40 {MEH(KC_G), MEH(KC_H),MEH(KC_I), MEH(KC_J), MEH(KC_K), KC_TRNS, KC_TRNS, RSFT(KC_HOME), RSFT(KC_UP), RSFT(KC_END), RSFT(KC_PGUP), },
41 {KC_TRNS, KC_TRNS, RSFT(KC_TAB), KC_TAB, KC_TRNS, KC_TRNS, RSFT(RCTL(KC_LEFT)), RSFT(KC_LEFT), RSFT(KC_DOWN), RSFT(KC_RIGHT), RSFT(RCTL(KC_RIGHT)), }, 41 {MEH(KC_L), MEH(KC_M),MEH(KC_N), MEH(KC_O), MEH(KC_P), KC_TRNS, RSFT(RCTL(KC_LEFT)), RSFT(KC_LEFT), RSFT(KC_DOWN), RSFT(KC_RIGHT), RSFT(RCTL(KC_RIGHT)), },
42 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RCTL(KC_C),RCTL(KC_X), RCTL(KC_V), RSFT(KC_PGDN), }, 42 {MEH(KC_Q), MEH(KC_R),MEH(KC_S), MEH(KC_T), MEH(KC_U), KC_TRNS, KC_TRNS, RCTL(KC_C),RCTL(KC_X), RCTL(KC_V), RSFT(KC_PGDN), },
43 {RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_ENTER, KC_SPACE, KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE), } 43 {RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_ENTER, KC_SPACE, KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE), }
44}, 44},
45 45
46[COMBINED] = { 46[COMBINED] = {
47 {KC_ESC, KC_LABK, KC_RABK, KC_DQUO, KC_GRAVE, KC_TRNS, KC_PLUS, KC_7, KC_8, KC_9, KC_ASTR, }, 47 {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_TRNS, KC_PLUS, KC_7, KC_8, KC_9, KC_ASTR, },
48 {KC_LPRN, KC_RPRN, KC_LBRACKET, KC_RBRACKET, KC_UNDS, KC_TRNS, KC_MINS, KC_4, KC_5, KC_6, KC_SLSH, }, 48 {KC_LPRN, KC_RPRN, KC_LBRACKET, KC_RBRACKET, KC_UNDS, KC_TRNS, KC_MINS, KC_4, KC_5, KC_6, KC_SLSH, },
49 {KC_LCBR, KC_RCBR, KC_BSLS, KC_PIPE, KC_TILD, KC_TRNS, KC_EQUAL, KC_1, KC_2, KC_3, KC_QUES, }, 49 {KC_COLN, KC_DQUO, KC_LCBR, KC_RCBR, KC_TRNS, KC_TRNS, KC_EQUAL, KC_1, KC_2, KC_3, KC_QUES, },
50 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_0, KC_DOT, KC_TRNS, KC_TRNS, } 50 {KC_PIPE, KC_BSLS, KC_CIRC, KC_AMPR, KC_TRNS, KC_TRNS, KC_TRNS, KC_0, KC_DOT, KC_TILD, KC_GRAVE, }
51}, 51},
52 52
53[MOUSE] = { 53[MOUSE] = {
diff --git a/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c b/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c
index c1195ecc0..c79f16123 100644
--- a/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c
+++ b/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c
@@ -14,16 +14,32 @@ enum custom_keycodes {
14 EPRM, 14 EPRM,
15 VRSN, 15 VRSN,
16 RGB_SLD, 16 RGB_SLD,
17 // shell nav macros
18 SHELL_LS,
19 SHELL_LSLTR,
20 SHELL_CDPRE,
21 SHELL_LESS,
22 SHELL_PLESS,
23 SHELL_PGREP,
24 SHELL_TAILF,
17 25
26 SHELL_PWD,
27 SHELL_H3,
28 SHELL_AMMCOLO,
29 SHELL_SCREENRD,
30 SHELL_SCREEN_NEW,
31 SHELL_SCREEN_LIST,
32 SHELL_MKE,
18}; 33};
19 34
20 35
21#define BASE 0 // base dvorak layer 36#define BASE 0 // base dvorak layer
22#define KEYNAV 1 // arrow navigation (right hand) 37#define KEYNAV 1 // arrow navigation (right hand)
23#define KEYSEL 2 // arrow navigation + shift (allow text selection) 38#define KEYSEL 2 // arrow navigation + shift (allow text selection)
24#define SHELL_NAV 3 // bash shortcuts 39#define SHELL_NAV 3 // bash shortcuts
25#define MOUSE 4 // mouse layer (can be locked with lock key) 40#define SHELL_SCREEN 4 // linux screen shortcuts
26#define COMBINED 5 // combined numbers and symbols layer 41#define MOUSE 5 // mouse layer (can be locked with lock key)
42#define COMBINED 6 // combined numbers and symbols layer
27 43
28// macros 44// macros
29#define MOUSE_TOGGLE 1 45#define MOUSE_TOGGLE 1
@@ -34,18 +50,38 @@ enum custom_keycodes {
34#define SWITCH_NDS 7 50#define SWITCH_NDS 7
35#define SCREEN_COPY_MODE 8 51#define SCREEN_COPY_MODE 8
36#define SCREEN_PASTE 9 52#define SCREEN_PASTE 9
37#define SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND 15 53#define SCREEN_RENAME 10
54#define SCREEN_NUMBER 11
55#define SCREEN_0 12
56#define SCREEN_1 13
57#define SCREEN_2 14
58#define SCREEN_3 15
59#define SCREEN_4 16
60#define SCREEN_5 17
61#define SCREEN_6 18
62#define SCREEN_7 19
63#define SCREEN_8 20
64#define SCREEN_9 21
65#define SCREEN_DETACH 22
66#define SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND 30
38 67
39 68
69#define MACRO_SCREEN_NUM(MACRO_NAME,NUM) \
70 case MACRO_NAME:\
71 if (record->event.pressed) {\
72 return MACRO( D(LCTL), T(A), U(LCTL), T(NUM), END);\
73 }\
74 break;\
75
40const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 76const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
41 77
42 [BASE] = KEYMAP( 78 [BASE] = KEYMAP(
43 // left hand 79 // left hand
44 KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, 80 KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
45 KC_TAB, KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, MEH(KC_2), 81 KC_TAB, KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, MEH(KC_2),
46 MO(SHELL_NAV), KC_A, KC_O, KC_E, KC_U, KC_I, 82 OSL(SHELL_NAV), KC_A, KC_O, KC_E, KC_U, KC_I,
47 MEH(KC_0), KC_SCOLON, KC_Q, KC_J, KC_K, KC_X, MEH(KC_3), 83 OSL(SHELL_SCREEN), KC_SCOLON, KC_Q, KC_J, KC_K, KC_X, MEH(KC_3),
48 MEH(KC_1), OSM(MOD_LSFT), OSM(MOD_LCTL), M(MOUSE_TOGGLE), MO(KEYSEL), 84 MEH(KC_1), OSM(MOD_LSFT), OSM(MOD_LCTL), M(MOUSE_TOGGLE), MO(KEYSEL),
49 85
50 // left thumb cluster 86 // left thumb cluster
51 MEH(KC_4), MEH(KC_5), 87 MEH(KC_4), MEH(KC_5),
@@ -114,23 +150,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
114 // shell navigation layer 150 // shell navigation layer
115 [SHELL_NAV] = KEYMAP( 151 [SHELL_NAV] = KEYMAP(
116 // left hand 152 // left hand
117 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, 153 KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
118 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, 154 KC_TRNS,KC_TRNS, SHELL_PGREP, SHELL_PLESS, SHELL_LESS, SHELL_MKE, SHELL_H3,
119 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, 155 KC_TRNS,LCTL(KC_A), SHELL_CDPRE, SHELL_LSLTR, SHELL_LS, SHELL_PWD,
120 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, 156 KC_TRNS,SHELL_SCREEN_LIST, SHELL_SCREENRD, SHELL_SCREEN_NEW, SHELL_TAILF, KC_TRNS, SHELL_AMMCOLO,
121 // bottom row 157 // bottom row
122 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, 158 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
123 // thumb cluster 159 // thumb cluster
124 KC_TRNS,KC_TRNS, 160 KC_TRNS,KC_TRNS,
125 LALT(KC_D), 161 KC_TRNS,
126 KC_TRNS,RCTL(KC_W),KC_TRNS, 162 KC_TRNS,KC_TRNS,KC_TRNS,
127 // right hand 163 // right hand
128 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(SWITCH_NDS), 164 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(SWITCH_NDS),
129 RCTL(KC_L), RCTL(KC_W), KC_HOME, KC_UP, KC_END, LALT(KC_D), RCTL(KC_R), 165 RCTL(KC_L), KC_TRNS, KC_HOME, KC_UP, KC_END, KC_TRNS, RCTL(KC_R),
130 LALT(KC_B), KC_LEFT, KC_DOWN, KC_RIGHT, LALT(KC_F), LALT(KC_DOT), 166 LALT(KC_B), KC_LEFT, KC_DOWN, KC_RIGHT, LALT(KC_F), LALT(KC_DOT),
131 RCTL(KC_C), RCTL(KC_U), M(SCREEN_COPY_MODE), M(SCREEN_PASTE), MEH(KC_V), RCTL(KC_K), M(SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND), 167 RCTL(KC_C), KC_TRNS, M(SCREEN_COPY_MODE), M(SCREEN_PASTE), MEH(KC_V), RCTL(KC_K), M(SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND),
132 // bottom row 168 // bottom row (match functionality of base layer)
133 M(SCREEN_TAB_LEFT), M(SCREEN_TAB_RIGHT), M(SCREEN_NEW_TAB), KC_TRNS, KC_TRNS, 169 KC_TRNS, RCTL(KC_W), KC_TRNS, LALT(KC_D), RCTL(KC_U),
134 // thumb cluster 170 // thumb cluster
135 KC_TRNS, KC_TRNS, 171 KC_TRNS, KC_TRNS,
136 KC_TRNS, 172 KC_TRNS,
@@ -138,16 +174,42 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
138 ), 174 ),
139 175
140 176
177 // linux screen layer
178 [SHELL_SCREEN] = KEYMAP(
179 // left hand
180 KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
181 KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
182 KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
183 KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
184 // bottom row
185 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
186 // thumb cluster
187 KC_TRNS,KC_TRNS,
188 KC_TRNS,
189 KC_TRNS,KC_TRNS,KC_TRNS,
190 // right hand
191 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
192 KC_TRNS, M(SCREEN_NEW_TAB), M(SCREEN_7), M(SCREEN_8), M(SCREEN_9), M(SCREEN_RENAME), KC_TRNS,
193 M(SCREEN_TAB_LEFT), M(SCREEN_4), M(SCREEN_5), M(SCREEN_6), M(SCREEN_TAB_RIGHT), KC_TRNS,
194 KC_TRNS, KC_TRNS, M(SCREEN_1), M(SCREEN_2), M(SCREEN_3), M(SCREEN_NUMBER), KC_TRNS,
195 // bottom row
196 M(SCREEN_0), KC_TRNS, KC_TRNS, KC_TRNS, M(SCREEN_DETACH),
197 // thumb cluster
198 KC_TRNS, KC_TRNS,
199 KC_TRNS,
200 KC_TRNS, KC_TRNS, KC_TRNS
201 ),
202
141 203
142 [COMBINED] = KEYMAP( 204 [COMBINED] = KEYMAP(
143 205
144 // left hand 206 // left hand
145 KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, 207 KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,
146 KC_TRNS,KC_ESC, KC_LABK, KC_RABK, KC_DQUO, KC_GRAVE,KC_TRNS, 208 KC_TRNS,KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC,KC_TRNS,
147 KC_TRNS,KC_LPRN, KC_RPRN, KC_LBRACKET, KC_RBRACKET, KC_UNDS, 209 KC_TRNS,KC_LPRN, KC_RPRN, KC_LBRACKET, KC_RBRACKET, KC_UNDS,
148 KC_TRNS,KC_LCBR, KC_RCBR, KC_BSLS, KC_PIPE, KC_TILD,KC_TRNS, 210 KC_TRNS,KC_COLN, KC_DQUO, KC_LCBR, KC_RCBR, KC_TRNS,KC_TRNS,
149 // bottom row 211 // bottom row
150 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, 212 KC_TRNS,KC_PIPE, KC_BSLS, KC_CIRC, KC_AMPR,
151 // thumb cluster 213 // thumb cluster
152 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, 214 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
153 215
@@ -157,7 +219,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
157 KC_MINS, KC_4, KC_5, KC_6, KC_SLSH, MEH(KC_N), 219 KC_MINS, KC_4, KC_5, KC_6, KC_SLSH, MEH(KC_N),
158 KC_TRNS, KC_EQUAL, KC_1, KC_2, KC_3, KC_QUES, MEH(KC_O), 220 KC_TRNS, KC_EQUAL, KC_1, KC_2, KC_3, KC_QUES, MEH(KC_O),
159 // bottom row 221 // bottom row
160 KC_0, KC_DOT, KC_TRNS, KC_TRNS, MEH(KC_P), 222 KC_0, KC_DOT, KC_TILD, KC_GRAVE, MEH(KC_P),
161 // thumb cluster 223 // thumb cluster
162 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS), 224 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS),
163 225
@@ -230,6 +292,41 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
230 return MACRO( D(LCTL), T(A), U(LCTL), T(C), END); 292 return MACRO( D(LCTL), T(A), U(LCTL), T(C), END);
231 } 293 }
232 break; 294 break;
295 case SCREEN_DETACH:
296 if (record->event.pressed) {
297 return MACRO( D(LCTL), T(A), U(LCTL), T(D), END);
298 }
299 break;
300 case SCREEN_RENAME:
301 if (record->event.pressed) {
302 return MACRO( D(LCTL), T(A), U(LCTL), D(LSFT), T(A), U(LSFT), END);
303 }
304 break;
305 case SCREEN_NUMBER:
306 if (record->event.pressed) {
307 return MACRO( D(LCTL), T(A), U(LCTL), D(LSFT), T(SCOLON), U(LSFT),
308 T(N),
309 T(U),
310 T(M),
311 T(B),
312 T(E),
313 T(R),
314 T(SPC),
315 END);
316 }
317 break;
318
319 MACRO_SCREEN_NUM(SCREEN_0,0);
320 MACRO_SCREEN_NUM(SCREEN_1,1);
321 MACRO_SCREEN_NUM(SCREEN_2,2);
322 MACRO_SCREEN_NUM(SCREEN_3,3);
323 MACRO_SCREEN_NUM(SCREEN_4,4);
324 MACRO_SCREEN_NUM(SCREEN_5,5);
325 MACRO_SCREEN_NUM(SCREEN_6,6);
326 MACRO_SCREEN_NUM(SCREEN_7,7);
327 MACRO_SCREEN_NUM(SCREEN_8,8);
328 MACRO_SCREEN_NUM(SCREEN_9,9);
329
233 case SCREEN_COPY_MODE: 330 case SCREEN_COPY_MODE:
234 if (record->event.pressed) { 331 if (record->event.pressed) {
235 return MACRO( D(LCTL), T(A), U(LCTL), T(ESC), END); 332 return MACRO( D(LCTL), T(A), U(LCTL), T(ESC), END);
@@ -282,8 +379,70 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
282 } 379 }
283 return false; 380 return false;
284 break; 381 break;
285
286 } 382 }
383
384 // shell macros
385 if(record->event.pressed) {
386 switch (keycode) {
387 case SHELL_LS:
388 SEND_STRING("ls\n");
389 return true;
390 break;
391 case SHELL_LSLTR:
392 SEND_STRING("ls -ltr\n");
393 return true;
394 break;
395 case SHELL_CDPRE:
396 SEND_STRING("cd ..\n");
397 return true;
398 break;
399 case SHELL_LESS:
400 SEND_STRING("less ");
401 return true;
402 break;
403 case SHELL_PLESS:
404 SEND_STRING(" | less");
405 return true;
406 break;
407 case SHELL_PGREP:
408 SEND_STRING(" | grep ");
409 return true;
410 break;
411 case SHELL_TAILF:
412 SEND_STRING("tail -f ");
413 return true;
414 break;
415 case SHELL_PWD:
416 SEND_STRING("echo `pwd`/");
417 return true;
418 break;
419 case SHELL_H3:
420 SEND_STRING("h3\n");
421 return true;
422 break;
423 case SHELL_AMMCOLO:
424 SEND_STRING("ammcolo\n");
425 return true;
426 break;
427 case SHELL_SCREENRD:
428 SEND_STRING("screen -r -d ");
429 return true;
430 break;
431 case SHELL_SCREEN_NEW:
432 SEND_STRING("screen -S ");
433 return true;
434 break;
435 case SHELL_SCREEN_LIST:
436 SEND_STRING("screen -list\n");
437 return true;
438 break;
439 case SHELL_MKE:
440 SEND_STRING("mke\n");
441 return true;
442 break;
443 }
444 }
445
287 return true; 446 return true;
288} 447}
289 448
@@ -306,6 +465,8 @@ void matrix_scan_user(void) {
306 case COMBINED: 465 case COMBINED:
307 ergodox_right_led_2_on(); 466 ergodox_right_led_2_on();
308 break; 467 break;
468 case SHELL_NAV:
469 case SHELL_SCREEN:
309 case KEYNAV: 470 case KEYNAV:
310 case KEYSEL: 471 case KEYSEL:
311 ergodox_right_led_3_on(); 472 ergodox_right_led_3_on();