aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/ergodox/keymaps/win10_writers-block/Makefile9
-rw-r--r--keyboards/ergodox/keymaps/win10_writers-block/config.h36
-rw-r--r--keyboards/ergodox/keymaps/win10_writers-block/images/base-layer.pngbin0 -> 125979 bytes
-rw-r--r--keyboards/ergodox/keymaps/win10_writers-block/images/media-layer.pngbin0 -> 102643 bytes
-rw-r--r--keyboards/ergodox/keymaps/win10_writers-block/images/rimworld-layer.pngbin0 -> 90359 bytes
-rw-r--r--keyboards/ergodox/keymaps/win10_writers-block/images/symbol-layer.pngbin0 -> 101477 bytes
-rw-r--r--keyboards/ergodox/keymaps/win10_writers-block/keymap.c324
-rw-r--r--keyboards/ergodox/keymaps/win10_writers-block/readme.md113
8 files changed, 482 insertions, 0 deletions
diff --git a/keyboards/ergodox/keymaps/win10_writers-block/Makefile b/keyboards/ergodox/keymaps/win10_writers-block/Makefile
new file mode 100644
index 000000000..fbab4b71c
--- /dev/null
+++ b/keyboards/ergodox/keymaps/win10_writers-block/Makefile
@@ -0,0 +1,9 @@
1# Having a file like this allows you to override Makefile definitions
2# for your own particular keymap
3
4TAP_DANCE_ENABLE=yes
5
6
7ifndef QUANTUM_DIR
8 include ../../../../Makefile
9endif
diff --git a/keyboards/ergodox/keymaps/win10_writers-block/config.h b/keyboards/ergodox/keymaps/win10_writers-block/config.h
new file mode 100644
index 000000000..568a711a8
--- /dev/null
+++ b/keyboards/ergodox/keymaps/win10_writers-block/config.h
@@ -0,0 +1,36 @@
1#ifndef KEYBOARDS_ERGODOX_CONFIG_H_
2#define KEYBOARDS_ERGODOX_CONFIG_H_
3
4#define MOUSEKEY_DELAY 100
5#define MOUSEKEY_INTERVAL 20
6#define MOUSEKEY_MAX_SPEED 3
7#define MOUSEKEY_TIME_TO_MAX 10
8
9#define TAPPING_TOGGLE 1
10
11/* define if matrix has ghost */
12//#define MATRIX_HAS_GHOST
13
14#define TAPPING_TERM 300
15#define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.)
16
17/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
18#define LOCKING_SUPPORT_ENABLE
19/* Locking resynchronize hack */
20#define LOCKING_RESYNC_ENABLE
21
22/* key combination for command */
23#define IS_COMMAND() ( \
24 keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \
25 keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
26)
27
28#ifdef SUBPROJECT_ez
29 #include "ez/config.h"
30#endif
31#ifdef SUBPROJECT_infinity
32 #include "infinity/config.h"
33#endif
34
35
36#endif /* KEYBOARDS_ERGODOX_CONFIG_H_ */
diff --git a/keyboards/ergodox/keymaps/win10_writers-block/images/base-layer.png b/keyboards/ergodox/keymaps/win10_writers-block/images/base-layer.png
new file mode 100644
index 000000000..d1cb1987c
--- /dev/null
+++ b/keyboards/ergodox/keymaps/win10_writers-block/images/base-layer.png
Binary files differ
diff --git a/keyboards/ergodox/keymaps/win10_writers-block/images/media-layer.png b/keyboards/ergodox/keymaps/win10_writers-block/images/media-layer.png
new file mode 100644
index 000000000..c2019da4e
--- /dev/null
+++ b/keyboards/ergodox/keymaps/win10_writers-block/images/media-layer.png
Binary files differ
diff --git a/keyboards/ergodox/keymaps/win10_writers-block/images/rimworld-layer.png b/keyboards/ergodox/keymaps/win10_writers-block/images/rimworld-layer.png
new file mode 100644
index 000000000..f866d3d55
--- /dev/null
+++ b/keyboards/ergodox/keymaps/win10_writers-block/images/rimworld-layer.png
Binary files differ
diff --git a/keyboards/ergodox/keymaps/win10_writers-block/images/symbol-layer.png b/keyboards/ergodox/keymaps/win10_writers-block/images/symbol-layer.png
new file mode 100644
index 000000000..6f49aae79
--- /dev/null
+++ b/keyboards/ergodox/keymaps/win10_writers-block/images/symbol-layer.png
Binary files differ
diff --git a/keyboards/ergodox/keymaps/win10_writers-block/keymap.c b/keyboards/ergodox/keymaps/win10_writers-block/keymap.c
new file mode 100644
index 000000000..ea640ee96
--- /dev/null
+++ b/keyboards/ergodox/keymaps/win10_writers-block/keymap.c
@@ -0,0 +1,324 @@
1#include "ergodox.h"
2#include "debug.h"
3#include "action_layer.h"
4#include "version.h"
5#include "wait.h"
6
7#define BASE 0 // default layer - helpful for writing in Office-style word processors.
8#define SYMB 1 // symbol layer - NumPad, etc. - same as Ergodox EZ default but no EEPROM or Version key
9#define RIMW 2 // rimworld layer - made for the game RimWorld, by Tynan Sylvester | feel free to remap for your favorite game!
10#define MDIA 3 // media layer - mouse and music - close to Ergodox EZ default media layer
11
12#define CO_PA M(0) // hold copy, tap paste
13
14#define W_CUT LCTL(KC_X) // C-x Cut
15#define W_COPY LCTL(KC_C) // C-c Copy
16#define W_PASTE LCTL(KC_V) // C-v Paste
17#define W_UNDO LCTL(KC_Z) // C-z Undo
18#define W_FIND LCTL(KC_F) // C-v Find
19#define W_CAD LCTL(LALT(KC_DEL)) // one-tap ctrl-alt-del
20
21
22
23//Tap Dance Declarations
24enum {
25 CAKEWARP,
26 CTRLALTMDIA,
27};
28
29void cake_count (qk_tap_dance_state_t *state, void *user_data) {
30 if (state->count == 2) {
31 layer_on (SYMB); //define double tap here
32 layer_off (MDIA);
33 }
34 else {
35 layer_off (SYMB); //define single tap or hold here
36 layer_off (MDIA);
37 }
38 if (state->count == 3) {
39 layer_on (RIMW); //define triple tap here
40 layer_off (MDIA);
41 }
42 else {
43 layer_off (RIMW); //define single tap or hold here
44 layer_off (MDIA);
45 reset_tap_dance (state);
46 }
47}
48
49void dance_cad_mdia_fin (qk_tap_dance_state_t *state, void *user_data) {
50 if (state->count == 1) {
51 register_code (KC_LCTL);
52 register_code (KC_LALT);
53 register_code (KC_DEL);
54 } else {
55 layer_on (MDIA);
56 }
57}
58
59void dance_cad_mdia_reset (qk_tap_dance_state_t *state, void *user_data) {
60 if (state->count == 1) {
61 unregister_code (KC_DEL);
62 unregister_code (KC_LALT);
63 unregister_code (KC_LCTL);
64 } else {
65 ;
66 }
67}
68
69//Tap Dance Definitions
70qk_tap_dance_action_t tap_dance_actions[] = {
71 // tap for Layer 0, tap twice to switch to symbol layer, and tap three times to switch to rimworld layer.
72 [CAKEWARP] = ACTION_TAP_DANCE_FN(cake_count)
73 // tap for ctrl-alt-del, tap twice for media layer
74 ,[CTRLALTMDIA] = ACTION_TAP_DANCE_FN_ADVANCED (NULL, dance_cad_mdia_fin, dance_cad_mdia_reset)
75 // Other declarations would go here, separated by commas, if you have them
76};
77
78//In Layer declaration, add tap dance item in place of a key code
79
80const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
81/* Keymap 0: Basic layer - TD(one_tap, two_taps, three_taps...)
82 *
83 * ,--------------------------------------------------. ,--------------------------------------------------.
84 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | | 7 | 7 | 8 | 9 | 0 | - | = |
85 * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
86 * | F12/L1 | Q | W | E | R | T | {/[ | |TD(L0 | Y | U | I | O | P | \ |
87 * |--------+------+------+------+------+------| | |L1 L2)|------+------+------+------+------+--------|
88 * |Caps/Win| A | S | D | F | G |------| |------| H | J | K | L | ; | ' |
89 * |--------+------+------+------+------+------| }/] | TD(ctrl|------+------+------+------+------+--------|
90 * |LShift/(|Z/Ctrl| X | C | V | B | | |altdel| N | M | , | . | / |RShift/)|
91 * `--------+------+------+------+------+-------------' |L3) |------+------+------+------+------+--------'
92 * | Undo | Cut |CopyPa| Meh | LGui | '------| | Enter| Left | Up | Down | Right |
93 * `----------------------------------' `----------------------------------'
94 * ,-------------. ,-------------.
95 * | Esc | VolUp| | F4 | Mute |
96 * ,------|------|------| |------+--------+------.
97 * | | | VolDn| | F5 | | |
98 * |Backsp|Delete|------| |------| Tab / |Space |
99 * |ace | | Find | | Alt | CTRL | |
100 * `--------------------' `----------------------'
101 */
102// If it accepts an argument (i.e, is a function), it doesn't need KC_.
103// Otherwise, it needs KC_*
104[BASE] = KEYMAP( // layer 0 : default
105 // left hand
106 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6,
107LT(SYMB, KC_F12), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC,
108 GUI_T(KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G,
109 KC_LSPO, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_RBRC,
110 W_UNDO, W_CUT, CO_PA, MEH_T(KC_NO), KC_LGUI,
111 KC_ESC, KC_VOLU,
112 KC_VOLD,
113 KC_BSPC, KC_DELETE, W_FIND,
114 // right hand
115 KC_7, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL,
116 TD(CAKEWARP), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
117 KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
118 TD(CTRLALTMDIA), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC,
119 KC_ENT, KC_LEFT, KC_UP, KC_DOWN, KC_RIGHT,
120 KC_F4, KC_MUTE,
121 KC_F5,
122 KC_RALT, CTL_T(KC_TAB), KC_SPC
123 ),
124
125/* Keymap 1: Symbol Layer | No EEPROM Or Version keys
126 *
127 * ,--------------------------------------------------. ,--------------------------------------------------.
128 * | | F1 | F2 | F3 | F4 | F5 | xx | | xx | F6 | F7 | F8 | F9 | F10 | F11 |
129 * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
130 * | | ! | @ | { | } | | | | |TD(L0 | Up | 7 | 8 | 9 | * | F12 |
131 * |--------+------+------+------+------+------| | |L1 L2)|------+------+------+------+------+--------|
132 * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | - |
133 * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
134 * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | |
135 * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
136 * | | | | | | | | . | 0 | = | |
137 * `----------------------------------' `----------------------------------'
138 * ,-------------. ,-------------.
139 * | | | | | |
140 * ,------|------|------| |------+------+------.
141 * | | | | | | | |
142 * | | |------| |------| | |
143 * | | | | | | | |
144 * `--------------------' `--------------------'
145 */
146// SYMBOLS
147[SYMB] = KEYMAP(
148 // left hand
149 KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO,
150 KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS,
151 KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV,
152 KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS,
153 KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
154 KC_TRNS,KC_TRNS,
155 KC_TRNS,
156 KC_TRNS,KC_TRNS,KC_TRNS,
157 // right hand
158 KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
159 KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12,
160 KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_MINS,
161 KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS,
162 KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_NO,
163 KC_TRNS, KC_TRNS,
164 KC_TRNS,
165 KC_TRNS, KC_TRNS, KC_TRNS
166),
167
168/* Keymap 2: RimWorld Layer
169 *
170 * ,--------------------------------------------------. ,--------------------------------------------------.
171 * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | | 7 | 7 | 8 | 9 | 0 | - | = |
172 * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
173 * | TAB | C | ,< | W | >. | R | | |TD(L0 | U | B | N | J | M | PGUP |
174 * |--------+------+------+------+------+------| F10 | |L1 L2)|------+------+------+------+------+--------|
175 * | I | F | A | S | D | 8 |------| |------| X | L | P | Y | H | ENTER |
176 * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
177 * | K | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | PGDN |
178 * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
179 * | | | | | | | F | | | | |
180 * `----------------------------------' `----------------------------------'
181 * ,-------------. ,-------------.
182 * | | | | | |
183 * ,------|------|------| |------+------+------.
184 * | | | | | | | |
185 * |SPACE | C |------| |------| E |SPACE |
186 * | | | Q | | | | |
187 * `--------------------' `--------------------'
188 */
189// RIMWORLD
190[RIMW] = KEYMAP(
191 // left hand
192 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6,
193 KC_TAB, KC_C, KC_COMM, KC_W, KC_DOT, KC_R, KC_F10,
194 KC_I, KC_F, KC_A, KC_S, KC_D, KC_8,
195 KC_K, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
196 KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
197 KC_TRNS,KC_TRNS,
198 KC_TRNS,
199 KC_C,KC_Q,KC_TRNS,
200 // right hand
201 KC_7, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL,
202 KC_TRNS, KC_U, KC_B, KC_N, KC_J, KC_M, KC_PGUP,
203 KC_X, KC_L, SFT_T(KC_P), KC_Y, KC_H, KC_ENT,
204 KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PGDN,
205 KC_F, KC_LEFT, KC_UP, KC_DOWN,KC_RIGHT,
206 KC_TRNS, KC_TRNS,
207 KC_TRNS,
208 KC_TRNS, KC_E, KC_TRNS
209),
210/* Keymap 3: Media and mouse keys
211 *
212 * ,--------------------------------------------------. ,--------------------------------------------------.
213 * | | | | | | | | | | | | | | | |
214 * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
215 * | | | | MsUp | | | | | | | | | | | |
216 * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
217 * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play |
218 * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
219 * | | | | | | | | | | | | Prev | Next | | |
220 * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
221 * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | |
222 * `----------------------------------' `----------------------------------'
223 * ,-------------. ,-------------.
224 * | | | | | |
225 * ,------|------|------| |------+------+------.
226 * | | | | | | |Brwser|
227 * | Lclk | Rclk |------| |------| |Back |
228 * | | | | | | | |
229 * `--------------------' `--------------------'
230 */
231// MEDIA AND MOUSE
232[MDIA] = KEYMAP(
233 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
234 KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS,
235 KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS,
236 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
237 KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2,
238 KC_TRNS, KC_TRNS,
239 KC_TRNS,
240 KC_BTN1, KC_BTN2, KC_TRNS,
241 // right hand
242 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
243 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
244 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY,
245 KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS,
246 KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS,
247 KC_TRNS, KC_TRNS,
248 KC_TRNS,
249 KC_TRNS, KC_TRNS, KC_WBAK
250),
251};
252
253static uint16_t key_timer;
254
255const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
256{
257 switch(id) {
258 case 0: {
259 if (record->event.pressed) {
260 key_timer = timer_read(); // if the key is being pressed, we start the timer.
261 }
262 else { // this means the key was just released, so we can figure out how long it was pressed for (tap or "held down").
263 if (timer_elapsed(key_timer) > 150) { // 150 being 150ms, the threshhold we pick for counting something as a tap.
264 return MACRO( D(LCTL), T(C), U(LCTL), END );
265 }
266 else {
267 return MACRO( D(LCTL), T(V), U(LCTL), END );
268 }
269 }
270 break;
271 }
272 }
273 return MACRO_NONE;
274};
275
276// Anything you want to do once when the keyboard initializes.
277// Tests LED function when the keyboard initializes.
278void matrix_init_user(void) {
279
280 wait_ms(500);
281 ergodox_board_led_on();
282 wait_ms(200);
283 ergodox_right_led_1_on();
284 wait_ms(200);
285 ergodox_right_led_2_on();
286 wait_ms(200);
287 ergodox_right_led_3_on();
288 wait_ms(200);
289 ergodox_board_led_off();
290 wait_ms(200);
291 ergodox_right_led_1_off();
292 wait_ms(200);
293 ergodox_right_led_2_off();
294 wait_ms(200);
295 ergodox_right_led_3_off();
296
297};
298
299
300// Runs constantly in the background, in a loop.
301void matrix_scan_user(void) {
302
303 uint8_t layer = biton32(layer_state);
304
305 ergodox_board_led_off();
306 ergodox_right_led_1_off();
307 ergodox_right_led_2_off();
308 ergodox_right_led_3_off();
309 switch (layer) {
310 case 1:
311 ergodox_right_led_1_on();
312 break;
313 case 2:
314 ergodox_right_led_2_on();
315 break;
316 case 3:
317 ergodox_right_led_3_on();
318 break;
319 default:
320 // none
321 break;
322 }
323
324};
diff --git a/keyboards/ergodox/keymaps/win10_writers-block/readme.md b/keyboards/ergodox/keymaps/win10_writers-block/readme.md
new file mode 100644
index 000000000..66b1aaf40
--- /dev/null
+++ b/keyboards/ergodox/keymaps/win10_writers-block/readme.md
@@ -0,0 +1,113 @@
1<!-- -*- mode: markdown; fill-column: 8192 -*- -->
2
3Win10 Writer's Block ErgoDox - v1.0
4
5=======================
6
7This is a QWERTY layout for QMK. It's designed to work well in MS Office-like environments. It's tested on Windows 7 and 10.
8
9Professional writers may find this layout useful -- copywriters, technical writers, novelists, etc.
10
11I use my ErgoDox with this keymap as a daily driver at my office.
12
13A gaming layer is unobtrusively built into this layout. I use that layer to play RimWorld.
14
15Feel free to modify the gaming layer to your personal taste.
16
17## Table of Contents
18
19* [Layouts](#layouts)
20 - [Base layer](#base-layer)
21 - [Symbol layer](#symbol-layer)
22 - [Gaming layer](#rimworld-layer)
23 - [Media layer](#media-layer)
24* [Tools](#tools)
25 - [Layer notification](#layer-notification)
26* [Building](#building)
27 - [Using on Windows](#using-on-windows)
28* [License](#license)
29* [Special Thanks](#special-thanks)
30
31# Layouts
32
33* TapDance will teleport you to the layer you want:
34* One Tap for the Base layer
35* Two Taps for the Symbol layer
36* Three Taps for the Rimworld/Gaming layer
37
38* Where the "Meh" key is located on the Ergodox EZ default layout, I've changed it to another tap dance key:
39* One Tap for CTRL-ALT-DEL
40* Two Taps for the Media/Mouse layer
41
42## Base layer
43
44[![Base layer](images/base-layer.png)](http://www.keyboard-layout-editor.com/#/gists/8fd9bbdd3a23bbb5a8779de3624a3be1)
45
46This is a QWERTY layout with some quirks.
47
48* Enter is located on a key that won't cause as much thumb fatigue.
49* Copy and Paste work from the same key. Just hold the key to copy and tap the key to paste!
50* Undo, Find and Cut are also one-touch keys.
51* F12 is where you would normally find TAB on standard layouts. Quickly save in Word, safely.
52* You'll find bracket keys below the "6" key.
53
54* The Meh Key is a single-button CTRL+ALT+SHIFT modifier.
55
56* Space Cadet Shift: Tap L Shift for "(" and R Shift for ")" -- holding either shift works like a normal shift.
57* Tap "Z" or Tab to use either normally. Hold them for CTRL.
58* Tap Caps Lock to use it normally. Hold it for Win key combinations (Win+D to minimize all programs, etc).
59
60## Symbol layer
61
62[![Symbol layer](images/symbol-layer.png)](http://www.keyboard-layout-editor.com/#/gists/04eb6458b8b17882e472f64d482f12b4)
63
64Your standard Ergodox EZ symbol + numpad layout, minus the Version and EEPROM keys.
65
66* From the base layer, hold the F12 Key to temporarily access this layer (use for quick access to numpad)
67* Release F12 to return to the base layer.
68
69## Rimworld layer
70
71[![Rimworld / Gaming Layer](images/rimworld-layer.png)](http://www.keyboard-layout-editor.com/#/gists/d53af8391e6e443ed0a98ccfbdb4eace)
72
73This layer was made to play RimWorld, a Sci-Fi Colony Survival Game by Tynan Sylvester and Ludeon Studios, available on Steam.
74
75* Have fun!
76
77## Media layer
78
79[![Media layer](images/media-layer.png)](http://www.keyboard-layout-editor.com/#/gists/3209d09ed4bd997e4f49f28c6ada2ab3)
80
81This is the standard Ergodox EZ media layout with more options for mouseclick buttons.
82
83* In this layer, your "space" key changes into a back button for your browser.
84
85## LED states
86
87Your LEDs will change to indicate your layer. You'll know you are in the base layer if all LEDs are off.
88
89# Building
90
91To build, you will need the [QMK][qmk] firmware checked out. from there, dive into `keyboards/ergodox/keymaps/win10_writers-block/`
92
93[qmk]: https://github.com/jackhumbert/qmk_firmware
94
95```
96$ make keyboard=ergodox keymap=win10_writers-block
97```
98
99## Using on Windows
100
101This layout is tested in Windows 7 Pro and Windows 10 Home environments.
102
103# License
104
105GPL 3+
106
107# Special Thanks
108
109* To algernon for his coding help. I'm a novice but I still made this work (and figured out tap dance) with his help.
110
111* To /r/MechanicalKeyboards for being an all-around great community.
112
113* To /u/profet23 for his amazing custom Ergodox boards. \ No newline at end of file