aboutsummaryrefslogtreecommitdiff
path: root/keyboards/keyprez/bison/keymaps/default/keymap.c
diff options
context:
space:
mode:
authorQMK Bot <hello@qmk.fm>2021-08-22 05:12:24 +0000
committerQMK Bot <hello@qmk.fm>2021-08-22 05:12:24 +0000
commit34d0376ab9d73a77c50b78b01498710346ba6105 (patch)
tree9289b852e84d243a7cb30f3c806d1545170103f4 /keyboards/keyprez/bison/keymaps/default/keymap.c
parentf70939444262da043dfd4e092579528498d14db6 (diff)
parent9a51076859f00c28749bc8e1627e7f09263f3a88 (diff)
downloadqmk_firmware-34d0376ab9d73a77c50b78b01498710346ba6105.tar.gz
qmk_firmware-34d0376ab9d73a77c50b78b01498710346ba6105.zip
Merge remote-tracking branch 'origin/master' into develop
Diffstat (limited to 'keyboards/keyprez/bison/keymaps/default/keymap.c')
-rw-r--r--keyboards/keyprez/bison/keymaps/default/keymap.c226
1 files changed, 226 insertions, 0 deletions
diff --git a/keyboards/keyprez/bison/keymaps/default/keymap.c b/keyboards/keyprez/bison/keymaps/default/keymap.c
new file mode 100644
index 000000000..fc1f34664
--- /dev/null
+++ b/keyboards/keyprez/bison/keymaps/default/keymap.c
@@ -0,0 +1,226 @@
1/* Copyright 2021 csandven
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#include QMK_KEYBOARD_H
17
18// Defines names for use in layer keycodes and the keymap
19enum layer_names {
20 _QWERTY,
21 _COLEMAK,
22 _LOWER,
23 _RAISE,
24 _HRM,
25 _FN,
26};
27
28enum custom_keycodes {
29 KC_QWRTY = SAFE_RANGE,
30 KC_COLMK,
31 KC_HRM,
32 KC_PRVWD,
33 KC_NXTWD
34};
35
36#define LOWER MO(_LOWER)
37#define RAISE MO(_RAISE)
38#define FN MO(_FN)
39#define ESC_CTL MT(MOD_LCTL, KC_ESC)
40#define HRM_LG MT(MOD_LGUI, KC_A)
41#define HRM_LA MT(MOD_LALT, KC_S)
42#define HRM_LC MT(MOD_LCTL, KC_D)
43#define HRM_LS MT(MOD_LSFT, KC_F)
44#define HRM_RG MT(MOD_RGUI, KC_SCLN)
45#define HRM_RA MT(MOD_RALT, KC_L)
46#define HRM_RC MT(MOD_RCTL, KC_K)
47#define HRM_RS MT(MOD_RSFT, KC_J)
48
49const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
50 /*
51 * QWERTY
52 * ,-------------------------------------------------------. ,-------------------------------------------------------.
53 * | F1 | F2 | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | = | DEL |
54 * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------|
55 * | F3 | F4 | Tab | Q | W | E | R | T | | Y | U | I | O | P | [ | ] | \ |
56 * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------|
57 * | F5 | F6 | ESC | A | S | D | F | G |-------. ,-------| H | J | K | L | ; | ' | BS | Fn |
58 * |------+------+------+------+------+------+------+------| | | |------+------+------+------+------+------+------+------|
59 * | F7 | F8 |LShift| Z | X | C | V | B | | | | N | M | , | . | / | Enter| Home | End |
60 * `-------------------------------------------------------/-------/ \------\-------------------------------------------------------'
61 * | LGUI | LAlt | LCTR |LOWER | BS / \Space |RAISE | RCTR | RAlt | RGUI |
62 * | | | | | / \ | | | | |
63 * `----------------------------------' '------''---------------------------'
64 */
65 [_QWERTY] = LAYOUT(
66 KC_F1, KC_F2, 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_DEL ,
67 KC_F3, KC_F4, 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,
68 KC_F5, KC_F6, ESC_CTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSPC, FN,
69 KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MPLY,KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_HOME, KC_END,
70 KC_LGUI,KC_LALT, LOWER, KC_BSPC, KC_SPC, RAISE, KC_RALT, KC_RGUI
71 ),
72
73 /*
74 * COLEMAK
75 * ,-------------------------------------------------------. ,-------------------------------------------------------.
76 * | F1 | F2 | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | = | DEL |
77 * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------|
78 * | F3 | F4 | Tab | Q | W | F | P | G | | J | L | U | Y | ; | [ | ] | \ |
79 * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------|
80 * | F5 | F6 | ESC | A | R | S | T | D |-------. ,-------| H | N | E | I | O | ' | BS | Fn |
81 * |------+------+------+------+------+------+------+------| | | |------+------+------+------+------+------+------+------|
82 * | F7 | F8 |LShift| Z | X | C | V | B | | | | K | M | , | . | / | Enter| Home | End |
83 * `-------------------------------------------------------/-------/ \------\-------------------------------------------------------'
84 * | LGUI | LAlt | LCTR |LOWER | BS / \Space \ |RAISE | RCTR | RAlt | RGUI |
85 * | | | | | / \ \ | | | | |
86 * `----------------------------------' '------''---------------------------'
87 */
88 [_COLEMAK] = LAYOUT(
89 KC_F1, KC_F2, 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_DEL,
90 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS,
91 KC_F5, KC_F6, ESC_CTL, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_BSPC, FN,
92 KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, XXXXXXX,KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_HOME, KC_END,
93 KC_LGUI,KC_LALT, LOWER, KC_BSPC, KC_SPC, RAISE, KC_RALT, KC_RGUI
94 ),
95
96 /*
97 * LOWER
98 * ,-------------------------------------------------------. ,-------------------------------------------------------.
99 * | | | | | | | | | | | | | | | | | |
100 * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------|
101 * | | | | F1 | F2 | F3 | F4 | | | | | | | | | | |
102 * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------|
103 * | | | | F5 | F6 | F7 | F8 | |-------. ,-------| LEFT | DOWN | UP | RIGHT| | | | |
104 * |------+------+------+------+------+------+------+------| | | |------+------+------+------+------+------+------+------|
105 * | | | | F9 | F10 | F11 | F12 | | | | | | | | | | | | |
106 * `-------------------------------------------------------/-------/ \------\-------------------------------------------------------'
107 * | | | | | / \ \ | | | | |
108 * | | | | | / \ \ | | | | |
109 * `----------------------------------' '------''---------------------------'
110 */
111 [_LOWER] = LAYOUT(
112 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
113 _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, _______, _______, _______, _______, _______, _______, _______, _______, _______,
114 _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, _______, _______, _______, _______,
115 _______, _______, _______, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______,
116 _______,_______, _______, _______, _______, _______, _______, _______
117 ),
118
119 /*
120 * RAISE
121 * ,-------------------------------------------------------. ,-------------------------------------------------------.
122 * | | | | | | | | | | | | | | | | | |
123 * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------|
124 * | | | | F1 | F2 | F3 | F4 | | | | | PrevW| UP | NextW| | | |
125 * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------|
126 * | | | | F5 | F6 | F7 | F8 | |-------. ,-------| | | LEFT | DOWN | RIGHT| | | |
127 * |------+------+------+------+------+------+------+------| | | |------+------+------+------+------+------+------+------|
128 * | | | | F9 | F10 | F11 | F12 | | | | | | | | | | | | |
129 * `-------------------------------------------------------/-------/ \------\-------------------------------------------------------'
130 * | | | | | / \ \ | | | | |
131 * | | | | | / \ \ | | | | |
132 * `----------------------------------' '------''---------------------------'
133 */
134 [_RAISE] = LAYOUT(
135 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
136 _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, _______, _______, _______,KC_PRVWD, KC_UP,KC_NXTWD, _______, _______, _______,
137 _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______, _______, _______, KC_LEFT, KC_DOWN,KC_RIGHT, _______, _______, _______,
138 _______, _______, _______, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______,
139 _______,_______, _______, _______, _______, _______, _______, _______
140 ),
141
142 /*
143 * HRM
144 * ,-------------------------------------------------------. ,-------------------------------------------------------.
145 * | | | | | | | | | | | | | | | | | |
146 * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------|
147 * | | | | | | | | | | | | | | | | | |
148 * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------|
149 * | | | |HRM_LG|HRM_LA|HRM_LC|HRM_LS| |-------. ,-------| |HRM_RS|HRM_RC|HRM_RA|HRM_RG| | | |
150 * |------+------+------+------+------+------+------+------| | | |------+------+------+------+------+------+------+------|
151 * | | | | | | | | | | | | | | | | | | | |
152 * `-------------------------------------------------------/-------/ \------\-------------------------------------------------------'
153 * | | | | | / \ \ | | | | |
154 * | | | | | / \ \ | | | | |
155 * `----------------------------------' '------''---------------------------'
156 */
157 [_HRM] = LAYOUT(
158 _______, _______, _______, _______, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
159 _______, _______, _______, _______, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
160 _______, _______, _______, HRM_LG, HRM_LA, HRM_LC, HRM_LS, _______, _______, HRM_RS, HRM_RC, HRM_RA, HRM_RG, _______, _______, _______,
161 _______, _______, _______, _______, _______, _______,_______, _______, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______,
162 _______,_______, _______, _______, _______, _______, _______, _______
163 ),
164
165 /*
166 * FN
167 * ,-------------------------------------------------------. ,-------------------------------------------------------.
168 * | | | | | | | | | | | | | | | | | |
169 * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------|
170 * | | | |QWERTY| | | | | | | | | | | | | |
171 * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------|
172 * | | | | | | | | |-------. ,-------|KC_HRM| | | | | | | |
173 * |------+------+------+------+------+------+------+------| | | |------+------+------+------+------+------+------+------|
174 * | | | | | |COLEMAK| | | | | | | | | | | | | |
175 * `-------------------------------------------------------/-------/ \------\-------------------------------------------------------'
176 * | | | | | / \ \ | | | | |
177 * | | | | | / \ \ | | | | |
178 * `----------------------------------' '------''---------------------------'
179 */
180 [_FN] = LAYOUT(
181 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
182 _______, _______, _______,KC_QWRTY, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
183 _______, _______, _______, _______, _______, _______, _______, _______, KC_HRM, _______, _______, _______, _______, _______, _______, _______,
184 _______, _______, _______, _______, _______,KC_COLMK, _______, _______, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______,
185 _______,_______, _______, _______, _______, _______, _______, _______
186 ),
187};
188
189bool process_record_user(uint16_t keycode, keyrecord_t *record) {
190 switch (keycode) {
191 case KC_QWRTY:
192 if (record->event.pressed) {
193 set_single_persistent_default_layer(_QWERTY);
194 }
195 return false;
196 case KC_COLMK:
197 if (record->event.pressed) {
198 set_single_persistent_default_layer(_COLEMAK);
199 }
200 return false;
201 case KC_HRM:
202 if (record->event.pressed) {
203 set_single_persistent_default_layer(_HRM);
204 }
205 return false;
206 case KC_PRVWD:
207 if (record->event.pressed) {
208 register_mods(mod_config(MOD_LCTL));
209 register_code(KC_LEFT);
210 } else {
211 unregister_mods(mod_config(MOD_LCTL));
212 unregister_code(KC_LEFT);
213 }
214 break;
215 case KC_NXTWD:
216 if (record->event.pressed) {
217 register_mods(mod_config(MOD_LCTL));
218 register_code(KC_RIGHT);
219 } else {
220 unregister_mods(mod_config(MOD_LCTL));
221 unregister_code(KC_RIGHT);
222 }
223 break;
224 }
225 return true;
226}