[Keyboard] Keyboard Naked48 Update (#7085)
[jackhill/qmk/firmware.git] / keyboards / naked48 / keymaps / salicylic_with_setta21 / keymap.c
CommitLineData
4747d974
S
1#include QMK_KEYBOARD_H
2#include "keymap_jp.h"
3
4extern keymap_config_t keymap_config;
5
6#ifdef RGBLIGHT_ENABLE
7//Following line allows macro to read current RGB settings
8extern rgblight_config_t rgblight_config;
9#endif
10
11extern uint8_t is_master;
12
13// Each layer gets a name for readability, which is then used in the keymap matrix below.
14// The underscores don't mean anything - you can have a layer called STUFF or any other name.
15// Layer names don't all need to be of the same length, obviously, and you can also skip them
16// entirely and just use numbers.
17enum layer_number {
18 _QWERTY = 0,
19 _LOWER,
20 _RAISE,
21 _ADJUST,
22};
23
24enum custom_keycodes {
233a1e9b 25 RGB_RST = SAFE_RANGE,
4747d974 26 SEND_SUM,
233a1e9b
S
27 SEND_AVE,
28 SEND_CIF,
4747d974
S
29 SEND_MAX,
30 SEND_MIN
31};
32
33// Fillers to make layering more clear
4747d974
S
34#define KC_CT11 LCTL_T(KC_F11)
35#define KC_SF12 SFT_T(KC_F12)
36#define KC_LOEN LT(_LOWER, KC_ENT)
37#define KC_RASP LT(_RAISE, KC_SPC)
38
4747d974
S
39#define KC_RADO LT(_RAISE, KC_PDOT)
40#define KC_LOP0 LT(_LOWER, KC_P0)
4747d974
S
41
42const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
43 [_QWERTY] = LAYOUT_with_setta21(
44 //,-----------------------------------------------------| |-----------------------------------------------------. |-----------------------------------------------|
233a1e9b 45 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, JP_LBRC, KC_LOP0, KC_P1, KC_P4, KC_P7,KC_NLCK, KC_ESC,
4747d974
S
46 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------|
47 KC_LCTRL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, JP_MINS, JP_RBRC, KC_P2, KC_P5, KC_P8,KC_PSLS, KC_F2,
48 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------|
49 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, JP_COMM, JP_DOT, JP_SLSH, JP_BSLS, KC_RADO, KC_P3, KC_P6, KC_P9,KC_PAST, JP_EQL,
50 //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |---------------+---------------+-------+-------|
51 KC_LEFT,KC_RIGHT, KC_LGUI, KC_MHEN, KC_LOEN, KC_BSPC, KC_DEL, KC_RASP, KC_HENK, KC_LALT, KC_DOWN, KC_UP, KC_PENT, KC_PPLS,KC_PMNS, KC_DEL
52 //`------------------------------------------------------------------------------------------------------------' |-----------------------------------------------|
53 ),
54
55 [_LOWER] = LAYOUT_with_setta21(
56 //,-----------------------------------------------------| |-----------------------------------------------------. |-----------------------------------------------|
233a1e9b 57 KC_ESC, JP_EXLM, JP_QUES, JP_LBRC, JP_RBRC, JP_TILD, KC_6, KC_7, KC_8, KC_9, JP_ASTR, JP_SLSH, MO(_LOWER),XXXXXXX,KC_LEFT,XXXXXXX,XXXXXXX, KC_ESC,
4747d974 58 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------|
233a1e9b 59 JP_QUOT, JP_HASH, JP_DQT, JP_LPRN, JP_RPRN, JP_AT, XXXXXXX, KC_4, KC_5, KC_6, JP_MINS, JP_EQL, KC_DOWN,KC_DOWN, KC_UP,KC_PSLS, KC_F2,
4747d974 60 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------|
233a1e9b 61 JP_CIRC, JP_PERC, JP_AMPR, JP_SCLN, JP_COLN, JP_PIPE, KC_0, KC_1, KC_2, KC_3, JP_PLUS, KC_ENT, MO(_RAISE),XXXXXXX,KC_RIGHT,XXXXXXX,KC_PAST, JP_EQL,
4747d974 62 //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |---------------+---------------+-------+-------|
233a1e9b 63 _______, _______, _______, KC_ZKHK,MO(_LOWER),_______,_______,MO(_RAISE),JP_DOT, _______, _______, _______, KC_PENT, KC_PPLS,KC_PMNS, KC_DEL
4747d974
S
64 //`------------------------------------------------------------------------------------------------------------' |-----------------------------------------------|
65 ),
66
67 [_RAISE] = LAYOUT_with_setta21(
68 //,-----------------------------------------------------| |-----------------------------------------------------. |-----------------------------------------------|
233a1e9b 69 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, XXXXXXX, KC_UP, XXXXXXX, KC_PGUP, KC_DEL, _______, KC_F11, KC_F4, KC_F7,SEND_MIN, KC_ESC,
4747d974 70 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------|
233a1e9b 71 KC_CT11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, KC_LEFT, KC_DOWN,KC_RIGHT, KC_LSFT, KC_ENT, KC_F12, KC_F5, KC_F8,SEND_MAX, KC_F2,
4747d974 72 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------|
233a1e9b 73 KC_SF12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGDN, XXXXXXX, _______, KC_F3, KC_F6, KC_F9,SEND_CIF, JP_EQL,
4747d974 74 //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |---------------+---------------+-------+-------|
233a1e9b 75 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, JP_RPRN, SEND_SUM,SEND_AVE, KC_DEL
4747d974
S
76 //`------------------------------------------------------------------------------------------------------------' |-----------------------------------------------|
77 ),
78
79 [_ADJUST] = LAYOUT_with_setta21( /* Base */
80 //,-----------------------------------------------------| |-----------------------------------------------------. |-----------------------------------------------|
233a1e9b 81 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,RGB_VAD,RGB_HUD,RGB_SAD,XXXXXXX,_______,
4747d974 82 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------|
233a1e9b 83 KC_LCTRL, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_MOD, XXXXXXX,LCA(KC_DEL),LALT(KC_PSCR),KC_PSCR, RGB_VAI,RGB_HUI,RGB_SAI,XXXXXXX,_______,
4747d974 84 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------|
233a1e9b 85 KC_LSFT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,_______,
4747d974 86 //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |---------------+---------------+-------+-------|
233a1e9b 87 _______, _______, _______, _______, _______, RESET, RESET, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG,_______,_______
4747d974
S
88 //`------------------------------------------------------------------------------------------------------------' |-----------------------------------------------|
89 )
90};
91
233a1e9b
S
92uint32_t layer_state_set_user(uint32_t state) {
93 return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
4747d974
S
94}
95
96int RGB_current_mode;
97bool process_record_user(uint16_t keycode, keyrecord_t *record) {
4747d974
S
98 bool result = false;
99 switch (keycode) {
4747d974
S
100 case SEND_SUM:
101 if (record->event.pressed) {
102 SEND_STRING("_SUM*");
103 }
104 break;
233a1e9b 105 case SEND_AVE:
4747d974
S
106 if (record->event.pressed) {
107 SEND_STRING("_AVERAGE*");
108 }
109 break;
233a1e9b 110 case SEND_CIF:
4747d974
S
111 if (record->event.pressed) {
112 SEND_STRING("_COUNTIF*");
113 }
114 break;
115 case SEND_MAX:
116 if (record->event.pressed) {
117 SEND_STRING("_MAX*");
118 }
119 break;
120 case SEND_MIN:
121 if (record->event.pressed) {
122 SEND_STRING("_MIN*");
123 }
124 break;
125 #ifdef RGBLIGHT_ENABLE
126 case RGB_MOD:
127 if (record->event.pressed) {
128 rgblight_mode(RGB_current_mode);
129 rgblight_step();
130 RGB_current_mode = rgblight_config.mode;
131 }
132 break;
233a1e9b 133 case RGB_RST:
4747d974
S
134 if (record->event.pressed) {
135 eeconfig_update_rgblight_default();
136 rgblight_enable();
137 RGB_current_mode = rgblight_config.mode;
138 }
139 break;
140 #endif
141 default:
142 result = true;
143 break;
144 }
145
146 return result;
147}
148
149void matrix_init_user(void) {
233a1e9b 150
4747d974 151}
233a1e9b 152