diff options
| author | Dan <loksonarius@users.noreply.github.com> | 2018-06-19 16:01:48 -0400 |
|---|---|---|
| committer | Drashna Jaelre <drashna@live.com> | 2018-06-19 13:01:48 -0700 |
| commit | 21a277bd8ed3375249ed84c9f7dbbf0706ca6513 (patch) | |
| tree | d03afed0812287f9e98eeec2c0e3a9c2d4a23139 | |
| parent | 44660e77a4e4c3f6ab180df1f8135ba0691dc012 (diff) | |
| download | qmk_firmware-21a277bd8ed3375249ed84c9f7dbbf0706ca6513.tar.gz qmk_firmware-21a277bd8ed3375249ed84c9f7dbbf0706ca6513.zip | |
DCompact Update 1 (#3202)
* Add Plover layer to DCompact from Planck default
* Fix up and update DCompact READMEs
* Add missing Steno features
* Switch flags to re-enable extrakeys
* Fix compilation bug in Chimera layout
| -rw-r--r-- | keyboards/chimera_ortho/keymaps/dcompact/README.md | 12 | ||||
| -rw-r--r-- | keyboards/chimera_ortho/keymaps/dcompact/keymap.c | 4 | ||||
| -rw-r--r-- | keyboards/planck/keymaps/dcompact/README.md | 12 | ||||
| -rw-r--r-- | keyboards/planck/keymaps/dcompact/keymap.c | 61 | ||||
| -rw-r--r-- | keyboards/planck/keymaps/dcompact/rules.mk | 11 |
5 files changed, 81 insertions, 19 deletions
diff --git a/keyboards/chimera_ortho/keymaps/dcompact/README.md b/keyboards/chimera_ortho/keymaps/dcompact/README.md index 04cb4fcb6..18c23d66e 100644 --- a/keyboards/chimera_ortho/keymaps/dcompact/README.md +++ b/keyboards/chimera_ortho/keymaps/dcompact/README.md | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | # DCompact Layout | 1 | # DCompact Layout |
| 2 | 2 | ||
| 3 | **Dvorak, Layered, Mouse-Enabled, Compact** | 3 | **Dvorak, Layered, Mouse-Enabled, Compact -- Plover coming soon!?!~** |
| 4 | 4 | ||
| 5 | _See [the layout source](keymap.c) for the actual layout_ | 5 | _See [the layout source](keymap.c) for the actual layout_ |
| 6 | 6 | ||
| @@ -11,7 +11,7 @@ layout: | |||
| 11 | 11 | ||
| 12 | - Provide minimal travel distance when typing English or coding | 12 | - Provide minimal travel distance when typing English or coding |
| 13 | - Consistent muscle memory translation from standard QWERTY | 13 | - Consistent muscle memory translation from standard QWERTY |
| 14 | - Statless typing experience | 14 | - Stateless typing experience |
| 15 | - OS-agnostic features, macros, and key placement | 15 | - OS-agnostic features, macros, and key placement |
| 16 | - Minimize dependence on mouse usage | 16 | - Minimize dependence on mouse usage |
| 17 | 17 | ||
| @@ -34,10 +34,10 @@ merge with those in the keyboard folder_ | |||
| 34 | 34 | ||
| 35 | ## Relevant Links | 35 | ## Relevant Links |
| 36 | 36 | ||
| 37 | - !(Online Dvorak Layout Trainer)[https://learn.dvorak.nl/] | 37 | -  |
| 38 | - !(Dvorak Wikipedia Page)[https://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard] | 38 | -  |
| 39 | - !(QMK Docs)[https://docs.qmk.fm/#/] | 39 | -  |
| 40 | - !(QMK KeyCode Reference)[https://docs.qmk.fm/#/keycodes] | 40 | -  |
| 41 | 41 | ||
| 42 | ## Contact | 42 | ## Contact |
| 43 | 43 | ||
diff --git a/keyboards/chimera_ortho/keymaps/dcompact/keymap.c b/keyboards/chimera_ortho/keymaps/dcompact/keymap.c index eab8db22c..74c3a25cd 100644 --- a/keyboards/chimera_ortho/keymaps/dcompact/keymap.c +++ b/keyboards/chimera_ortho/keymaps/dcompact/keymap.c | |||
| @@ -95,8 +95,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 95 | ), | 95 | ), |
| 96 | }; | 96 | }; |
| 97 | 97 | ||
| 98 | # These control the color of the LED on the receiver | 98 | // These control the color of the LED on the receiver |
| 99 | # For color reference, see ../../chimera_ortho.h | 99 | // For color reference, see ../../chimera_ortho.h |
| 100 | void matrix_scan_user(void) { | 100 | void matrix_scan_user(void) { |
| 101 | uint8_t layer = biton32(layer_state); | 101 | uint8_t layer = biton32(layer_state); |
| 102 | 102 | ||
diff --git a/keyboards/planck/keymaps/dcompact/README.md b/keyboards/planck/keymaps/dcompact/README.md index 04cb4fcb6..d3e4c7a62 100644 --- a/keyboards/planck/keymaps/dcompact/README.md +++ b/keyboards/planck/keymaps/dcompact/README.md | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | # DCompact Layout | 1 | # DCompact Layout |
| 2 | 2 | ||
| 3 | **Dvorak, Layered, Mouse-Enabled, Compact** | 3 | **Dvorak, Layered, Mouse-Enabled, Compact -- now with Plover~** |
| 4 | 4 | ||
| 5 | _See [the layout source](keymap.c) for the actual layout_ | 5 | _See [the layout source](keymap.c) for the actual layout_ |
| 6 | 6 | ||
| @@ -11,7 +11,7 @@ layout: | |||
| 11 | 11 | ||
| 12 | - Provide minimal travel distance when typing English or coding | 12 | - Provide minimal travel distance when typing English or coding |
| 13 | - Consistent muscle memory translation from standard QWERTY | 13 | - Consistent muscle memory translation from standard QWERTY |
| 14 | - Statless typing experience | 14 | - Stateless typing experience |
| 15 | - OS-agnostic features, macros, and key placement | 15 | - OS-agnostic features, macros, and key placement |
| 16 | - Minimize dependence on mouse usage | 16 | - Minimize dependence on mouse usage |
| 17 | 17 | ||
| @@ -34,10 +34,10 @@ merge with those in the keyboard folder_ | |||
| 34 | 34 | ||
| 35 | ## Relevant Links | 35 | ## Relevant Links |
| 36 | 36 | ||
| 37 | - !(Online Dvorak Layout Trainer)[https://learn.dvorak.nl/] | 37 | -  |
| 38 | - !(Dvorak Wikipedia Page)[https://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard] | 38 | -  |
| 39 | - !(QMK Docs)[https://docs.qmk.fm/#/] | 39 | -  |
| 40 | - !(QMK KeyCode Reference)[https://docs.qmk.fm/#/keycodes] | 40 | -  |
| 41 | 41 | ||
| 42 | ## Contact | 42 | ## Contact |
| 43 | 43 | ||
diff --git a/keyboards/planck/keymaps/dcompact/keymap.c b/keyboards/planck/keymaps/dcompact/keymap.c index 21245b702..a5ce1ef41 100644 --- a/keyboards/planck/keymaps/dcompact/keymap.c +++ b/keyboards/planck/keymaps/dcompact/keymap.c | |||
| @@ -16,6 +16,7 @@ | |||
| 16 | 16 | ||
| 17 | #include "planck.h" | 17 | #include "planck.h" |
| 18 | #include "action_layer.h" | 18 | #include "action_layer.h" |
| 19 | #include "keymap_steno.h" | ||
| 19 | 20 | ||
| 20 | // Custom Keycodes and Combinations Used | 21 | // Custom Keycodes and Combinations Used |
| 21 | #define DEL_SHF SFT_T(KC_DEL) | 22 | #define DEL_SHF SFT_T(KC_DEL) |
| @@ -33,17 +34,20 @@ enum planck_layers { | |||
| 33 | _LOWER, | 34 | _LOWER, |
| 34 | _RAISE, | 35 | _RAISE, |
| 35 | _FUNC, | 36 | _FUNC, |
| 36 | _MOUSE, | 37 | _PLOVER, |
| 37 | _ADJUST | 38 | _ADJUST, |
| 39 | _MOUSE | ||
| 38 | }; | 40 | }; |
| 39 | 41 | ||
| 40 | enum planck_keycodes { | 42 | enum planck_keycodes { |
| 41 | BASE = SAFE_RANGE, | 43 | BASE = SAFE_RANGE, |
| 44 | PLOVER, | ||
| 42 | LOWER, | 45 | LOWER, |
| 43 | RAISE, | 46 | RAISE, |
| 44 | FUNC, | 47 | FUNC, |
| 45 | MOUSE, | 48 | MOUSE, |
| 46 | ADJUST | 49 | ADJUST, |
| 50 | EXT_PLV | ||
| 47 | }; | 51 | }; |
| 48 | 52 | ||
| 49 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 53 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| @@ -56,14 +60,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 56 | * |------+------+------+------+------+------|------+------+------+------+------+------| | 60 | * |------+------+------+------+------+------|------+------+------+------+------+------| |
| 57 | * |Del/Sf| : ; | Q | J | K | X | B | M | W | V | Z | Bspc | | 61 | * |Del/Sf| : ; | Q | J | K | X | B | M | W | V | Z | Bspc | |
| 58 | * |------+------+------+------+------+------+------+------+------+------+------+------| | 62 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 59 | * | Ctrl | Fn | GUI | Alt |Lower |Shift |Space |Raise | Alt | GUI | Fn |Enter | | 63 | * | Ctrl |Plover| GUI | Alt |Lower |Shift |Space |Raise | Alt | GUI | Fn |Enter | |
| 60 | * `-----------------------------------------------------------------------------------' | 64 | * `-----------------------------------------------------------------------------------' |
| 61 | */ | 65 | */ |
| 62 | [_BASE] = { | 66 | [_BASE] = { |
| 63 | { KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH}, | 67 | { KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH}, |
| 64 | { KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS}, | 68 | { KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS}, |
| 65 | { DEL_SHF, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_BSPC}, | 69 | { DEL_SHF, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_BSPC}, |
| 66 | { KC_LCTL, FUNC, KC_LGUI, KC_LALT, LOWER, KC_LSFT, KC_SPC, RAISE, KC_RALT, KC_RGUI, FUNC, KC_ENT} | 70 | { KC_LCTL, PLOVER, KC_LGUI, KC_LALT, LOWER, KC_LSFT, KC_SPC, RAISE, KC_RALT, KC_RGUI, FUNC, KC_ENT} |
| 67 | }, | 71 | }, |
| 68 | 72 | ||
| 69 | /* Lower | 73 | /* Lower |
| @@ -138,6 +142,25 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 138 | { _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX} | 142 | { _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX} |
| 139 | }, | 143 | }, |
| 140 | 144 | ||
| 145 | /* Plover layer (http://opensteno.org) | ||
| 146 | * ,-----------------------------------------------------------------------------------. | ||
| 147 | * | # | # | # | # | # | # | # | # | # | # | # | # | | ||
| 148 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 149 | * | FN | S | T | P | H | * | * | F | P | L | T | D | | ||
| 150 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 151 | * | | S | K | W | R | * | * | R | B | G | S | Z | | ||
| 152 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 153 | * | Exit | | | A | O | | E | U | PWR | RES1 | RES2 | | ||
| 154 | * `-----------------------------------------------------------------------------------' | ||
| 155 | */ | ||
| 156 | |||
| 157 | [_PLOVER] = { | ||
| 158 | {STN_N1, STN_N2, STN_N3, STN_N4, STN_N5, STN_N6, STN_N7, STN_N8, STN_N9, STN_NA, STN_NB, STN_NC }, | ||
| 159 | {STN_FN, STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR }, | ||
| 160 | {XXXXXXX, STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR }, | ||
| 161 | {EXT_PLV, XXXXXXX, XXXXXXX, STN_A, STN_O, XXXXXXX, XXXXXXX, STN_E, STN_U, STN_PWR, STN_RE1, STN_RE2} | ||
| 162 | }, | ||
| 163 | |||
| 141 | /* Adjust (Lower + Raise) | 164 | /* Adjust (Lower + Raise) |
| 142 | * ,-----------------------------------------------------------------------------------. | 165 | * ,-----------------------------------------------------------------------------------. |
| 143 | * | | Reset| | | | | | | | | | Del | | 166 | * | | Reset| | | | | | | | | | Del | |
| @@ -158,6 +181,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 158 | 181 | ||
| 159 | }; | 182 | }; |
| 160 | 183 | ||
| 184 | #ifdef AUDIO_ENABLE | ||
| 185 | float plover_song[][2] = SONG(PLOVER_SOUND); | ||
| 186 | float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND); | ||
| 187 | #endif | ||
| 188 | |||
| 161 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 189 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 162 | switch (keycode) { | 190 | switch (keycode) { |
| 163 | case LOWER: | 191 | case LOWER: |
| @@ -188,6 +216,25 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 188 | } | 216 | } |
| 189 | return false; | 217 | return false; |
| 190 | break; | 218 | break; |
| 219 | case PLOVER: | ||
| 220 | if (!record->event.pressed) { | ||
| 221 | #ifdef AUDIO_ENABLE | ||
| 222 | stop_all_notes(); | ||
| 223 | PLAY_SONG(plover_song); | ||
| 224 | #endif | ||
| 225 | layer_on(_PLOVER); | ||
| 226 | } | ||
| 227 | return false; | ||
| 228 | break; | ||
| 229 | case EXT_PLV: | ||
| 230 | if (record->event.pressed) { | ||
| 231 | #ifdef AUDIO_ENABLE | ||
| 232 | PLAY_SONG(plover_gb_song); | ||
| 233 | #endif | ||
| 234 | layer_off(_PLOVER); | ||
| 235 | } | ||
| 236 | return false; | ||
| 237 | break; | ||
| 191 | case MOUSE: | 238 | case MOUSE: |
| 192 | if (record->event.pressed) { | 239 | if (record->event.pressed) { |
| 193 | layer_on(_MOUSE); | 240 | layer_on(_MOUSE); |
| @@ -199,3 +246,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 199 | } | 246 | } |
| 200 | return true; | 247 | return true; |
| 201 | } | 248 | } |
| 249 | |||
| 250 | void matrix_init_user() { | ||
| 251 | steno_set_mode(STENO_MODE_GEMINI); | ||
| 252 | } | ||
diff --git a/keyboards/planck/keymaps/dcompact/rules.mk b/keyboards/planck/keymaps/dcompact/rules.mk index 9c9280adb..d7eff1adc 100644 --- a/keyboards/planck/keymaps/dcompact/rules.mk +++ b/keyboards/planck/keymaps/dcompact/rules.mk | |||
| @@ -2,3 +2,14 @@ ifndef QUANTUM_DIR | |||
| 2 | include ../../../../Makefile | 2 | include ../../../../Makefile |
| 3 | endif | 3 | endif |
| 4 | 4 | ||
| 5 | # https://beta.docs.qmk.fm/reference/config-options#feature-options | ||
| 6 | # Features Specifically Wanted | ||
| 7 | EXTRAKEY_ENABLE = yes | ||
| 8 | STENO_ENABLE = yes | ||
| 9 | NKRO_ENABLE = yes | ||
| 10 | AUDIO_ENABLE = yes | ||
| 11 | |||
| 12 | # Features taking up space | ||
| 13 | MOUSEKEY_ENABLE = no | ||
| 14 | MIDI_ENABLE = no | ||
| 15 | CONSOLE_ENABLE = no | ||
