diff options
| author | lucwastiaux <luc.wastiaux@xsmail.com> | 2018-07-27 05:21:55 +0800 |
|---|---|---|
| committer | Drashna Jaelre <drashna@live.com> | 2018-07-26 14:21:55 -0700 |
| commit | f2bf5a9a749c55c8941e3b17a2416631972b4cc7 (patch) | |
| tree | 635b485c03c69035469a3fc46430cd7f29e2ba06 | |
| parent | 7a8c139d072ca8919e685affa1001b4199d52255 (diff) | |
| download | qmk_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.c | 52 | ||||
| -rw-r--r-- | keyboards/ergodox_ez/keymaps/dvorak_42_key/README.md | 7 | ||||
| -rw-r--r-- | keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c | 149 |
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 | |||
| 16 | static bool mouse_lock = false; | ||
| 17 | 11 | ||
| 18 | enum custom_keycodes { | 12 | enum 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 | ||
| 119 | const 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 | ||
| 18 | static bool mouse_lock = false; | ||
| 19 | |||
| 20 | enum custom_keycodes { | 18 | enum 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[] = { | |||
| 379 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | 356 | const 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; |
