aboutsummaryrefslogtreecommitdiff
path: root/keyboards/atreus62/keymaps/d4mation/keymap.c
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/atreus62/keymaps/d4mation/keymap.c')
-rw-r--r--keyboards/atreus62/keymaps/d4mation/keymap.c196
1 files changed, 196 insertions, 0 deletions
diff --git a/keyboards/atreus62/keymaps/d4mation/keymap.c b/keyboards/atreus62/keymaps/d4mation/keymap.c
new file mode 100644
index 000000000..63b9d6142
--- /dev/null
+++ b/keyboards/atreus62/keymaps/d4mation/keymap.c
@@ -0,0 +1,196 @@
1#include QMK_KEYBOARD_H
2#include "d4mation.h"
3
4enum layer_names {
5 _DVR,
6 _QWR,
7 _LOWER,
8 _RAISE,
9 _NUM,
10 _ADJUST
11};
12
13enum keymap_custom_keycodes {
14 LOWER = NEW_SAFE_RANGE,
15 RAISE
16};
17
18const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
19
20 /* Default/Dvorak layer
21 * ,-----------------------------------------. ,-----------------------------------------.
22 * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | / |
23 * |------+------+------+------+------+------| |------+------+------+------+------+------|
24 * | Tab | ' | , | . | P | Y | | F | G | C | R | L | = |
25 * |------+------+------+------+------+------| |------+------+------+------+------+------|
26 * | Ctrl | A | O | E | U | I |,------.,------.| D | H | T | N | S | - |
27 * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
28 * |Shift | ; | Q | J | K | X ||Super ||Enter || B | M | W | V | Z | \ |
29 * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
30 * | NUM | Alt | Home | End |Lower | Bksp |`------'`------'|Space |Raise | Left | Down | Up |Right |
31 * `-----------------------------------------' `-----------------------------------------'
32 */
33
34 [_DVR] = LAYOUT(
35 _GRAVE_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH,
36 KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_EQL,
37 KC_LCTL, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS,
38 TD(SHIFT_CAPS), KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_BSLS,
39 TG(_NUM), KC_RALT, KC_HOME, KC_END, LOWER, KC_BSPC, KC_LGUI, KC_ENT, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT
40 ),
41
42 /* Qwerty layer, more "standard" for other people who may need to use my keyboard or for games where using Qwerty is just easier
43 * ,-----------------------------------------. ,-----------------------------------------.
44 * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
45 * |------+------+------+------+------+------| |------+------+------+------+------+------|
46 * | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
47 * |------+------+------+------+------+------| |------+------+------+------+------+------|
48 * | Ctrl | A | S | D | F | G |,------.,------.| H | J | K | L | ; | ' |
49 * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
50 * |Shift | Z | X | C | V | B ||Super ||Enter || N | M | , | . | / | = |
51 * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
52 * | NUM | Alt | Home | End |Lower | Bksp |`------'`------'|Space |Raise | Left | Down | Up |Right |
53 * `-----------------------------------------' `-----------------------------------------'
54 */
55
56 [_QWR] = LAYOUT(
57 _GRAVE_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
58 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
59 KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
60 TD(SHIFT_CAPS), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_EQL,
61 TG(_NUM), KC_RALT, KC_HOME, KC_END, LOWER, KC_BSPC, KC_LGUI, KC_ENT, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT
62 ),
63
64 /* "Lower" layer
65 * ,-----------------------------------------. ,-----------------------------------------.
66 * | F11 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F12 |
67 * |------+------+------+------+------+------| |------+------+------+------+------+------|
68 * | | | | |SLEEP | | | | | SCRGB| | | |
69 * |------+------+------+------+------+------| |------+------+------+------+------+------|
70 * | | | | | | |,------.,------.| | | | { | } | |
71 * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
72 * | | | | | | || || || | Mute | VolD | VolU | | |
73 * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
74 * | | |PageUp|PgDown| | Del |`------'`------'| Ins | | | | | |
75 * `-----------------------------------------' `-----------------------------------------'
76 */
77
78 [_LOWER] = LAYOUT(
79 KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
80 _______, _______, _______, _______, SLEEP, _______, _______, _______, SCRGB, _______, _______, _______,
81 _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LCBR, KC_RCBR, _______,
82 _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______,
83 _______, _______, KC_PGUP, KC_PGDN, _______, KC_DEL, _______, _______, KC_INS, _______, _______, _______, _______, _______
84 ),
85
86 /* "Raise" layer
87 * ,-----------------------------------------. ,-----------------------------------------.
88 * | F11 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F12 |
89 * |------+------+------+------+------+------| |------+------+------+------+------+------|
90 * | | |<?php>| ?> | | | |ZALGO | | | | | |
91 * |------+------+------+------+------+------| |------+------+------+------+------+------|
92 * | | Shrug|Lenny |Magic |Disfac| |,------.,------.| | | | [ | ] | |
93 * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
94 * | | Ameno| Tflip| Tput | | || || || | Prev | Play | Next | | |
95 * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
96 * | | |PageUp|PgDown| | Del |`------'`------'| Ins | | | | | |
97 * `-----------------------------------------' `-----------------------------------------'
98 */
99
100 [_RAISE] = LAYOUT(
101 KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
102 _______, _______, PHPOPEN, PHPCLSE, _______, _______, ZALGO, _______, _______, _______, _______, _______,
103 _______, SHRUG, LENNY, MAGIC, DISFACE, _______, _______, _______, _______, KC_LBRC, KC_RBRC,_______,
104 _______, AMENO, TFLIP, TPUT, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______,
105 _______, _______, KC_PGUP, KC_PGDN, _______, KC_DEL, _______, _______, KC_INS, _______, _______, _______, _______, _______
106 ),
107
108 /* "Numpad" layer
109 * ,-----------------------------------------. ,-----------------------------------------.
110 * | | | / | * | - | | | | | / | * | - | |
111 * |------+------+------+------+------+------| |------+------+------+------+------+------|
112 * | | 7 | 8 | 9 | + | | | | 7 | 8 | 9 | + | |
113 * |------+------+------+------+------+------| |------+------+------+------+------+------|
114 * | | 4 | 5 | 6 | + | |,------.,------.| | 4 | 5 | 6 | + | |
115 * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
116 * | | 1 | 2 | 3 | Enter| || || || | 1 | 2 | 3 | Enter| |
117 * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
118 * | | 0 | 0 | . | Enter| |`------'`------'| | 0 | 0 | . | Enter| |
119 * `-----------------------------------------' `-----------------------------------------'
120 */
121
122 [_NUM] = LAYOUT(
123 _______, _______, KC_PSLS, KC_PAST, KC_PMNS, _______, _______, _______, KC_PSLS, KC_PAST, KC_PMNS, _______,
124 _______, KC_KP_7, KC_KP_8, KC_KP_9, KC_PPLS, _______, _______, KC_KP_7, KC_KP_8, KC_KP_9, KC_PPLS, _______,
125 _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______, _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______,
126 _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, _______, _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, _______,
127 _______, KC_KP_0, KC_KP_0, KC_PDOT, KC_PENT, _______, _______, _______, _______, KC_KP_0, KC_KP_0, KC_PDOT, KC_PENT, _______
128 ),
129
130 /* "Adjust" layer, only active if both "Lower" and "Raise" are active at the same time
131 * All unused keys are blanked out for this layer
132 * ,-----------------------------------------. ,-----------------------------------------.
133 * | NO | NO | NO | NO | NO | NO | | NO | NO | NO | NO | NO | NO |
134 * |------+------+------+------+------+------| |------+------+------+------+------+------|
135 * | NO |RESET | NO | NO | NO | NO | | NO | NO | NO | NO | NO | NO |
136 * |------+------+------+------+------+------| |------+------+------+------+------+------|
137 * | NO | NO | NO |UC WIN|UC OSX| NO |,------.,------.| NO |Dvorak|Qwerty| NO | NO | NO |
138 * |------+------+------+------+------+------|| Swap || ||------+------+------+------+------+------|
139 * | NO | NO | NO | NO | NO | NO || to || Swap || NO | NO | NO | NO | NO | NO |
140 * |------+------+------+------+------+------|| Ctrl || Back ||------+------+------+------+------+------|
141 * | NO | NO | NO | NO | | NO |`------'`------'| NO | | NO | NO | NO | NO |
142 * `-----------------------------------------' `-----------------------------------------'
143 */
144
145 [_ADJUST] = LAYOUT(
146 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
147 XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
148 XXXXXXX, XXXXXXX, XXXXXXX, UC_M_WI, UC_M_OS, XXXXXXX, XXXXXXX, DF(_DVR),DF(_QWR),XXXXXXX, XXXXXXX, XXXXXXX,
149 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
150 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, CG_SWAP, CG_NORM, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
151 ),
152
153};
154
155/* Runs just one time when the keyboard initializes. */
156void eeconfig_init_keymap( void ) {
157 set_unicode_input_mode( UC_OSX );
158};
159
160bool process_record_keymap( uint16_t keycode, keyrecord_t *record ) {
161
162 switch ( keycode ) {
163
164 case LOWER:
165
166 if ( record->event.pressed ) {
167 layer_on( _LOWER );
168 update_tri_layer( _LOWER, _RAISE, _ADJUST );
169 }
170 else {
171 layer_off( _LOWER );
172 update_tri_layer( _LOWER, _RAISE, _ADJUST );
173 }
174
175 return false;
176 break;
177
178 case RAISE :
179
180 if ( record->event.pressed ) {
181 layer_on( _RAISE );
182 update_tri_layer( _LOWER, _RAISE, _ADJUST );
183 }
184 else {
185 layer_off( _RAISE );
186 update_tri_layer( _LOWER, _RAISE, _ADJUST );
187 }
188
189 return false;
190 break;
191
192 }
193
194 return true;
195
196}; \ No newline at end of file