aboutsummaryrefslogtreecommitdiff
path: root/keyboards/keebio/iris/keymaps/lewisridden/keymap.c
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/keebio/iris/keymaps/lewisridden/keymap.c')
-rw-r--r--keyboards/keebio/iris/keymaps/lewisridden/keymap.c136
1 files changed, 136 insertions, 0 deletions
diff --git a/keyboards/keebio/iris/keymaps/lewisridden/keymap.c b/keyboards/keebio/iris/keymaps/lewisridden/keymap.c
new file mode 100644
index 000000000..e5d12ebd1
--- /dev/null
+++ b/keyboards/keebio/iris/keymaps/lewisridden/keymap.c
@@ -0,0 +1,136 @@
1#include "iris.h"
2#include "action_layer.h"
3#include "eeconfig.h"
4
5extern keymap_config_t keymap_config;
6
7#define _QWERTY 0
8#define _LOWER 1
9#define _RAISE 2
10#define _ADJUST 16
11
12enum custom_keycodes {
13 QWERTY = SAFE_RANGE,
14 LOWER,
15 RAISE,
16 ADJUST,
17};
18
19#define KC_ KC_TRNS
20
21#define KC_LOWR LOWER
22#define KC_RASE RAISE
23#define KC_RST RESET
24#define KC_BL_S BL_STEP
25
26const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
27
28 [_QWERTY] = LAYOUT_kc(
29 //,----+----+----+----+----+----. ,----+----+----+----+----+----.
30 ESC , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,BSPC,
31 //|----+----+----+----+----+----| |----+----+----+----+----+----|
32 TAB , Q , W , E , R , T , Y , U , I , O , P ,DEL ,
33 //|----+----+----+----+----+----| |----+----+----+----+----+----|
34 RASE, A , S , D , F , G , H , J , K , L ,SCLN,QUOT,
35 //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
36 LSFT, Z , X , C , V , B ,SPC , PSCR , N , M ,COMM,DOT ,SLSH,RGHT,
37 //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
38 LCTL,LOWR,SPC , ENT ,LGUI,LALT
39 // `----+----+----' `----+----+----'
40 ),
41
42 [_LOWER] = LAYOUT_kc(
43 //,----+----+----+----+----+----. ,----+----+----+----+----+----.
44 TILD,EXLM, AT ,HASH,DLR ,PERC, CIRC,AMPR,ASTR,LPRN,RPRN,BSPC,
45 //|----+----+----+----+----+----| |----+----+----+----+----+----|
46 , ,PGUP, , ,LBRC, RBRC, P7 , P8 , P9 ,PLUS, ,
47 //|----+----+----+----+----+----| |----+----+----+----+----+----|
48 ,HOME,PGDN,END, ,LPRN, RPRN, P4 , P5 , P6 ,MINS,PIPE,
49 //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
50 , , , , , , , , , P1 , P2 , P3 ,EQL ,UNDS ,
51 //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
52 , ,DEL , BSPC , , P0
53 // `----+----+----' `----+----+----'
54
55),
56 [_RAISE] = LAYOUT_kc(
57 //,----+----+----+----+----+----. ,----+----+----+----+----+----.
58 F12 , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 ,
59 //|----+----+----+----+----+----| |----+----+----+----+----+----|
60 , , UP , , ,LBRC, RBRC, ,NLCK,INS ,SLCK,MUTE,
61 //|----+----+----+----+----+----| |----+----+----+----+----+----|
62 ,LEFT,DOWN,RGHT, ,LPRN, RPRN,MPRV,MPLY,MNXT, ,VOLU,
63 //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
64 , , , , , , , , , , , , ,VOLD,
65 //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
66 , , , , ,
67 // `----+----+----' `----+----+----'
68 ),
69
70 [_ADJUST] = LAYOUT(
71 //,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------.
72 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
73 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
74 RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______,
75 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
76 RESET , DEBUG , RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______,
77 //|--------+--------+--------+--------+--------+--------+--------. ,--------|--------+--------+--------+--------+--------+--------|
78 BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
79 //`--------+--------+--------+----+---+--------+--------+--------/ \--------+--------+--------+---+----+--------+--------+--------'
80 _______, _______, _______, _______, _______, _______
81 // `--------+--------+--------' `--------+--------+--------'
82 )
83
84};
85
86#ifdef AUDIO_ENABLE
87float tone_qwerty[][2] = SONG(QWERTY_SOUND);
88#endif
89
90void persistent_default_layer_set(uint16_t default_layer) {
91 eeconfig_update_default_layer(default_layer);
92 default_layer_set(default_layer);
93}
94
95bool process_record_user(uint16_t keycode, keyrecord_t *record) {
96 switch (keycode) {
97 case QWERTY:
98 if (record->event.pressed) {
99 #ifdef AUDIO_ENABLE
100 PLAY_SONG(tone_qwerty);
101 #endif
102 persistent_default_layer_set(1UL<<_QWERTY);
103 }
104 return false;
105 break;
106 case LOWER:
107 if (record->event.pressed) {
108 layer_on(_LOWER);
109 update_tri_layer(_LOWER, _RAISE, _ADJUST);
110 } else {
111 layer_off(_LOWER);
112 update_tri_layer(_LOWER, _RAISE, _ADJUST);
113 }
114 return false;
115 break;
116 case RAISE:
117 if (record->event.pressed) {
118 layer_on(_RAISE);
119 update_tri_layer(_LOWER, _RAISE, _ADJUST);
120 } else {
121 layer_off(_RAISE);
122 update_tri_layer(_LOWER, _RAISE, _ADJUST);
123 }
124 return false;
125 break;
126 case ADJUST:
127 if (record->event.pressed) {
128 layer_on(_ADJUST);
129 } else {
130 layer_off(_ADJUST);
131 }
132 return false;
133 break;
134 }
135 return true;
136}