1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
|
# Massdrop Ctrl Xanimos
This keymap is the one I use on my MD CTRL, as a professional software engineer I like to make things my own. I'm also up for spreading the love.
Massdrop has had a pretty bad rap with qmk the past but recently it's not too bad once you put a little pizzazz into it.
I started with the Endgame keymap and have re-written most of and expanded upon it.
## Layers
### Typing Layer
_I physically switched around my RALT and Menu keys as my personal preference. The label is still in default location but you can see they are mapped to my liking._
```
__________ ___________________________________________ ___________________________________________ ___________________________________________ ________________________________
| ESC | | F1 | F2 | F3 | F4 | | F5 | F6 | F7 | F8 | | F9 | F10 | F11 | F12 | | PRINT | SCLCK | PAUSE |
| ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| KC_ESC | | KC_F1 | KC_F2 | KC_F3 | KC_F4 | | KC_F5 | KC_F6 | KC_F7 | KC_F8 | | KC_F9 | KC_F10 | KC_F11 | KC_F12 | | KC_PSCR | KC_SLCK | RCS(M) |
|__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________|
____________________________________________________________________________________________________________________________________________________________________ ________________________________
| ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BCKSP | | INS | HOME | PGUP |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| KC_GRV | KC_1 | KC_2 | KC_3 | KC_4 | KC_5 | KC_6 | KC_7 | KC_8 | KC_9 | KC_0 | KC_MINS | KC_EQL | KC_BSPC | | KC_INS | KC_HOME | KC_PGUP |
|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_____________________| |__________|__________|__________|
| TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | | DEL | END | PGDN |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| KC_TAB | KC_Q | KC_W | KC_E | KC_R | KC_T | KC_Y | KC_U | KC_I | KC_O | KC_P | KC_LBRC | KC_RBRC | KC_BSLS | | KC_DEL | KC_END | KC_PGDN |
|_______________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|________________| |__________|__________|__________|
| CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ |
| KC_CAPS | KC_A | KC_S | KC_D | KC_F | KC_G | KC_H | KC_J | KC_K | KC_L | KC_SCLN | KC_QUOT | KC_ENT |
|_________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________| __________
| SHIFT | Z | X | C | V | B | N | M | , | . | / | RSHIFT | | UP |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ |
| KC_LSPO | KC_Z | KC_X | KC_C | KC_V | KC_B | KC_N | KC_M | KC_COMM | KC_DOT | KC_SLSH | KC_RSPC | | KC_UP |
|____________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________________| __________|__________|__________
| CTRL | GUI | ALT | SPACE | RALT | MENU | RGUI | RCTRL | | LEFT | DOWN | RIGHT |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| KC_LCTRL | KC_LGUI | KC_LALT | KC_SPC | FN_SWTCH | KC_RALT | KC_RGUI | KC_RCTL | | KC_LEFT | KC_DOWN | KC_RGHT |
|_____________|_____________|_____________|_________________________________________________________________|______________|_____________|_____________|_____________| |__________|__________|__________|
```
### Function Layer
```
__________ ___________________________________________ ___________________________________________ ___________________________________________ ________________________________
| ESC | | F1 | F2 | F3 | F4 | | F5 | F6 | F7 | F8 | | F9 | F10 | F11 | F12 | | PRINT | SCLCK | PAUSE |
| ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| | | ROUT_TG | ROUT_RM | ROUT_VD | ROUT_VI | | | | | | | | KC_WAKE | KC_SLEP | | | KC_PAUS | | KC_MUTE |
|__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________|
____________________________________________________________________________________________________________________________________________________________________ ________________________________
| ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BCKSP | | INS | HOME | PGUP |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| | | | | | | | | | | | | | | | KC_MSTP | KC_MPLY | KC_VOLU |
|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_____________________| |__________|__________|__________|
| TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | | DEL | END | PGDN |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| | RGB_MOD | RGB_SPI | RBG_VAI | RGB_HUI | | | | | | | | | | | KC_MPRV | KC_MNXT | KC_VOLD |
|_______________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|________________| |__________|__________|__________|
| CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ |
| | RGB_RMOD | RGB_SPD | RGB_VAD | RGB_HUD | | | | | | | | |
|_________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________| __________
| SHIFT | Z | X | C | V | B | N | M | , | . | / | RSHIFT | | UP |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ |
| | | | COPY_ALL | | MD_BOOT | NK_TOGG | | | | | TOGGLE_NUMPAD | | KC_BRIU |
|____________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________________| __________|__________|__________
| CTRL | GUI | ALT | SPACE | RALT | MENU | RGUI | RCTRL | | LEFT | DOWN | RIGHT |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| | | | | | | | | | | KC_BRID | |
|_____________|_____________|_____________|_________________________________________________________________|______________|_____________|_____________|_____________| |__________|__________|__________|
```
### Git Layer
```
__________ ___________________________________________ ___________________________________________ ___________________________________________ ________________________________
| ESC | | F1 | F2 | F3 | F4 | | F5 | F6 | F7 | F8 | | F9 | F10 | F11 | F12 | | PRINT | SCLCK | PAUSE |
| ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| | | | | | | | | | | | | | | | | | | | |
|__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________|
____________________________________________________________________________________________________________________________________________________________________ ________________________________
| ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BCKSP | | INS | HOME | PGUP |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| G_INIT | G_CLONE | G_REMTE | G_RESET | G_PSFWL | | | | | | | | | | | | | |
|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_____________________| |__________|__________|__________|
| TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | | DEL | END | PGDN |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| | G_PUPST | G_PULL | G_PSORG | G_PUSH | | | | | | | | | | | | | |
|_______________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|________________| |__________|__________|__________|
| CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ |
| | G_ADD | G_STAT | G_DIFF | G_FETCH | | | | | | | | |
|_________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________| __________
| SHIFT | Z | X | C | V | B | N | M | , | . | / | RSHIFT | | UP |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ |
| | G_LOG | G_CHECK | G_COMM | G_COMSG | G_BRANH | | | | | | | | |
|____________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________________| __________|__________|__________
| CTRL | GUI | ALT | SPACE | RALT | MENU | RGUI | RCTRL | | LEFT | DOWN | RIGHT |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| | | | | | | | | | | | |
|_____________|_____________|_____________|_________________________________________________________________|______________|_____________|_____________|_____________| |__________|__________|__________|
```
- These are the strings that are dumped/keyed in for each associated keycode
```
G_INIT "git init"
G_CLONE "git clone "
G_ADD "git add "
G_DIFF "git diff "
G_RESET "git reset --soft "
G_BRANH "git branch --list"
G_CHECK "git checkout "
G_REMTE "git remote add "
G_FETCH "git fetch "
G_PULL "git pull"
G_PUPST "git pull upstream "
G_PUSH "git push"
G_PSORG "git push -u origin "
G_PSFWL "git push --force-with-lease"
G_COMM "git commit "
G_COMSG "git commit -m \": [TFS-]\""
G_STAT "git status"
G_LOG "git log"
```
### Numpad Layer
*activated via the __Function Layer__ and stays active until you escape*
```
__________ ___________________________________________ ___________________________________________ ___________________________________________ ________________________________
| ESC | | F1 | F2 | F3 | F4 | | F5 | F6 | F7 | F8 | | F9 | F10 | F11 | F12 | | PRINT | SCLCK | PAUSE |
| ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| TOG_NPD | | | | | | | | | | | | | | | | | | | |
|__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________|
____________________________________________________________________________________________________________________________________________________________________ ________________________________
| ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BCKSP | | INS | HOME | PGUP |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| | | | | | | | | | | | | | | | | | |
|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_____________________| |__________|__________|__________|
| TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | | DEL | END | PGDN |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| | | | | | | KC_P7 | KC_P8 | KC_P9 | | | | | | | | | |
|_______________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|________________| |__________|__________|__________|
| CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ |
| | | | | | | KC_P4 | KC_P5 | KC_P6 | | | | |
|_________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________| __________
| SHIFT | Z | X | C | V | B | N | M | , | . | / | RSHIFT | | UP |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ |
| | | | | | KC_P1 | KC_P2 | KC_P3 | KC_PDOT | | | | | |
|____________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________________| __________|__________|__________
| CTRL | GUI | ALT | SPACE | RALT | MENU | RGUI | RCTRL | | LEFT | DOWN | RIGHT |
| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ |
| | | | KC_P0 | | | | | | | | |
|_____________|_____________|_____________|_________________________________________________________________|______________|_____________|_____________|_____________| |__________|__________|__________|
```
## Features
These are the features currently used by this keymap:
### RGB Time Out
This allows setting a dynamic timeout for RGB to turn off. The following is supported:
1. Restores on the first click of any key.
2. Restores to its previous state before timeout. i.e. if it was edge only before timeout it will restore to edge only, same for all modes.
3. Doesn't interfere with RGB modes. You can set keyboard to All, Edge Only or Off and timeout will not interfere with these modes.
4. The time before RGB is turned off is dynamically adjustable using keycodes ROUT_VI to increase, ROUT_VD to decrease. They have a 10 second steps by default. Minimum value 10 seconds by default and maximum is 10 minutes.
5. Can be toggled on or off dyncamically with the ROUT_TG keycode.
6. Can be put in fast mode using ROUT_FM, for movie watching purposes. Default value is 3 seconds. Note that fast mode disabled ROUT_VD and ROUT_VI so to use them again you have to toggle fast mode off with ROUT_FM. It doesn't impact ROUT_TG and ROUT_TG will remember if fast mode was enabled when toggled back on, so it doesn't disable fast mode on its own, only ROUT_FM can disable or enable fast mode.
### Tapdance Keys
Created a tapdance setup to use the same key to switch between the layers, aka a function key. ;)
Layers are temporary while holding the function key down.
- Single tap and hold: Activates the Function Layer.
- Double tap and hold: Activates the Git Layer.
### Numpad
Activated in the *Function Layer* by holding down the fn key and pressing the toggle key (RSHIFT). The keeps the layer activated without needing to hold the fn key anymore.
To leave the numpad layer press the ESC key or hold and let go of the fn key.
### Space Cadet Shift
The typing layer is setup to use the [Space Cadet Shift](https://docs.qmk.fm/#/feature_space_cadet). As a software engineer this is massively useful :)
_Sorry ISO users, you'll need to configure it for your own setup or disable it._
## Credits
- [endgame](https://github.com/qmk/qmk_firmware/tree/master/keyboards/massdrop/ctrl/keymaps/endgame) by [ash0x0](https://github.com/ash0x0)
For the base keymap I started with.
|