Compare commits
28 Commits
2023-12-16
...
2024-06-17
| Author | SHA1 | Date | |
|---|---|---|---|
| efcd882784 | |||
| e5cb15e11c | |||
| d95104a672 | |||
| e58afed32c | |||
| 29b2cb26e9 | |||
| e0af1fa5dd | |||
| f22b4c579c | |||
| ce98807d44 | |||
| c7e860e597 | |||
| 290b549f66 | |||
| 9be7641b41 | |||
| 51241369e3 | |||
| 71886d6d74 | |||
| 498e57efaa | |||
| 7953fd664c | |||
| 50a0c6456b | |||
| 81ca318fa7 | |||
| 71255baf54 | |||
| f489152126 | |||
| 824ea2a75b | |||
| 98f879ee45 | |||
| bf829370bc | |||
| da320a4fbd | |||
| 9c299faa9b | |||
| dee1c1f7da | |||
| 07c9cab34e | |||
| b56ac10442 | |||
| bf214891dd |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -4,3 +4,4 @@ obj_*
|
||||
*.map
|
||||
build/
|
||||
.DS_Store
|
||||
.vscode/
|
||||
@@ -22,6 +22,16 @@ enum {
|
||||
|
||||
enum {
|
||||
CUSTOM_KEYCODE_START = SAFE_RANGE,
|
||||
QWERTY,
|
||||
COLEMAK,
|
||||
LINUX,
|
||||
COPY,
|
||||
PASTE,
|
||||
CUT,
|
||||
UNDO,
|
||||
REDO,
|
||||
SALL,
|
||||
SPOTLI,
|
||||
M_PASS1,
|
||||
M_PASS2,
|
||||
M_PASS3,
|
||||
|
||||
@@ -17,8 +17,8 @@
|
||||
// EMPTY ROW
|
||||
#define __________________EMPTY_____________________ _______, _______, _______, _______, _______
|
||||
// BOOTLOADER
|
||||
#define _________________BOOT_R1____________________ _______, _______, _______, _______, QK_BOOTLOADER
|
||||
#define _________________BOOT_L1____________________ QK_BOOTLOADER,_______,_______,_______,_______
|
||||
#define _________________BOOT_R1____________________ _______, _______, QWERTY, _______, QK_BOOTLOADER
|
||||
#define _________________BOOT_L1____________________ QK_BOOTLOADER,_______,COLEMAK,_______,_______
|
||||
|
||||
|
||||
// _BASE
|
||||
@@ -35,9 +35,9 @@
|
||||
#define __________________NAV_L2____________________ _______, _______, _______, M_PASS3, M_PASS4
|
||||
#define __________________NAV_L3____________________ _______, _______, _______, M_PASS2, M_PASS1
|
||||
|
||||
#define __________________NAV_R1____________________ _______, KC_PSTE, KC_COPY, KC_CUT, KC_UNDO
|
||||
#define __________________NAV_R2____________________ KC_CAPS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
#define __________________NAV_R3____________________ _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END
|
||||
#define __________________NAV_R1____________________ KC_CAPS, PASTE, COPY, CUT, UNDO
|
||||
#define __________________NAV_R2____________________ KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______
|
||||
#define __________________NAV_R3____________________ SALL, KC_HOME, KC_PGUP, KC_PGDN, KC_END
|
||||
|
||||
|
||||
// NUM
|
||||
@@ -69,5 +69,14 @@
|
||||
|
||||
// MOUSE
|
||||
#define __________________MOU_R1____________________ _______, KC_PSTE, KC_COPY, KC_CUT, KC_UNDO
|
||||
#define __________________MOU_R2____________________ KC_BTN1, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R
|
||||
#define __________________MOU_R3____________________ KC_BTN2, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R
|
||||
#define __________________MOU_R2____________________ KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, _______
|
||||
#define __________________MOU_R3____________________ KC_BTN2, KC_BTN1, KC_WH_D, KC_WH_U, KC_BTN2
|
||||
|
||||
// COLEMAK-DH
|
||||
#define __________________COLEML1____________________ Q_ESC, KC_W, KC_F, KC_P, KC_B
|
||||
#define __________________COLEML2____________________ KC_A, KC_R, KC_S, KC_T, KC_G
|
||||
#define __________________COLEML3____________________ KC_Z, KC_X, KC_C, KC_D, KC_V
|
||||
|
||||
#define __________________COLEMR1____________________ KC_J, KC_L, KC_U, KC_Y, KC_QUOT
|
||||
#define __________________COLEMR2____________________ KC_M, KC_N, KC_E, KC_I, KC_O
|
||||
#define __________________COLEMR3____________________ KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
#pragma once
|
||||
|
||||
typedef enum {
|
||||
_BASE,
|
||||
_QWERTY,
|
||||
_NAV,
|
||||
_NUM,
|
||||
_SYM,
|
||||
_FUN,
|
||||
_MUS,
|
||||
_MOUSE
|
||||
_MOUSE,
|
||||
_COLEMAK_DH
|
||||
} layers_t;
|
||||
@@ -35,7 +35,7 @@ combo_t key_combos[] = {
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_BASE] = LAYOUT_wrapper(
|
||||
[_QWERTY] = LAYOUT_wrapper(
|
||||
// ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐
|
||||
__________________BASE_L1____________________, __________________BASE_R1____________________,
|
||||
// ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤
|
||||
@@ -44,6 +44,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
__________________BASE_L3____________________, __________________BASE_R3____________________,
|
||||
// └────────┴────────┴────────┴────────┼────────┤ ├────────┼────────┴────────┴────────┴────────┘
|
||||
_______, _______,
|
||||
// ┌────────┬────────┼────────┼ ┼────────┼────────┬────────┐
|
||||
___________THUMB_L3________, ___________THUMB_R3________
|
||||
// └────────┴────────┴────────┘ └────────┴────────┴────────┘
|
||||
),
|
||||
[_COLEMAK_DH] = LAYOUT_wrapper(
|
||||
// ┌────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┐
|
||||
__________________COLEML1____________________, __________________COLEMR1____________________,
|
||||
// ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤
|
||||
__________________COLEML2____________________, __________________COLEMR2____________________,
|
||||
// ├────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┤
|
||||
__________________COLEML3____________________, __________________COLEMR3____________________,
|
||||
// └────────┴────────┴────────┴────────┼────────┤ ├────────┼────────┴────────┴────────┴────────┘
|
||||
_______, _______,
|
||||
// ┌────────┬────────┼────────┼ ┼────────┼────────┬────────┐
|
||||
___________THUMB_L3________, ___________THUMB_R3________
|
||||
// └────────┴────────┴────────┘ └────────┴────────┴────────┘
|
||||
@@ -253,8 +266,8 @@ static void render_status(void) {
|
||||
oled_write_P(PSTR("\n"), false);
|
||||
oled_write_P(PSTR("\n"), false);
|
||||
switch (get_highest_layer(layer_state)) {
|
||||
case _BASE:
|
||||
oled_write_P(PSTR("BASE "), false);
|
||||
case _QWERTY:
|
||||
oled_write_P(PSTR("QWERTY "), false);
|
||||
break;
|
||||
case _NAV:
|
||||
oled_write_P(PSTR("NAV "), false);
|
||||
@@ -291,8 +304,80 @@ bool oled_task_user(void) {
|
||||
|
||||
#endif //OLED_ENABLE
|
||||
|
||||
uint8_t mod_state;
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
static bool isLinux = false;
|
||||
mod_state = get_mods();
|
||||
switch (keycode) {
|
||||
case QWERTY:
|
||||
if (record->event.pressed) {
|
||||
set_single_persistent_default_layer(_QWERTY);
|
||||
}
|
||||
return false;
|
||||
case COLEMAK:
|
||||
if (record->event.pressed) {
|
||||
set_single_persistent_default_layer(_COLEMAK_DH);
|
||||
}
|
||||
return false;
|
||||
case LINUX:
|
||||
if (record->event.pressed) {
|
||||
isLinux = !isLinux;
|
||||
}
|
||||
return false;
|
||||
case COPY:
|
||||
if (record->event.pressed) {
|
||||
if (isLinux) {
|
||||
tap_code16(LCTL(KC_C));
|
||||
} else {
|
||||
tap_code16(LGUI(KC_C));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
case PASTE:
|
||||
if (record->event.pressed) {
|
||||
if (isLinux) {
|
||||
tap_code16(LCTL(KC_V));
|
||||
} else {
|
||||
tap_code16(LGUI(KC_V));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
case CUT:
|
||||
if (record->event.pressed) {
|
||||
if (isLinux) {
|
||||
tap_code16(LCTL(KC_X));
|
||||
} else {
|
||||
tap_code16(LGUI(KC_X));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
case UNDO:
|
||||
if (record->event.pressed) {
|
||||
if (isLinux) {
|
||||
tap_code16(LCTL(KC_Z));
|
||||
} else {
|
||||
tap_code16(LGUI(KC_Z));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
case REDO:
|
||||
if (record->event.pressed) {
|
||||
if (isLinux) {
|
||||
tap_code16(LCTL(KC_Y));
|
||||
} else {
|
||||
tap_code16(LSG(KC_Z));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
case SALL:
|
||||
if (record->event.pressed) {
|
||||
if (isLinux) {
|
||||
tap_code16(LCTL(KC_A));
|
||||
} else {
|
||||
tap_code16(LGUI(KC_A));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
case M_PASS1:
|
||||
if (record->event.pressed) {
|
||||
SEND_STRING("P0plarLake!2023");
|
||||
@@ -300,17 +385,22 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
return false;
|
||||
case M_PASS2:
|
||||
if (record->event.pressed) {
|
||||
SEND_STRING("Thel0ve0fchrist!");
|
||||
SEND_STRING("CindieVerano!2024");
|
||||
}
|
||||
return false;
|
||||
case M_PASS3:
|
||||
if (record->event.pressed) {
|
||||
SEND_STRING("6754");
|
||||
SEND_STRING("1290");
|
||||
}
|
||||
return false;
|
||||
case M_PASS4:
|
||||
if (record->event.pressed) {
|
||||
SEND_STRING("10242677");
|
||||
SEND_STRING("Thel0ve0fchrist!");
|
||||
}
|
||||
return false;
|
||||
case SPOTLI:
|
||||
if (record->event.pressed) {
|
||||
tap_code16(LGUI(KC_SPACE));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -318,6 +408,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef ENCODER_ENABLE
|
||||
bool encoder_update_user(uint8_t index, bool clockwise) {
|
||||
if (index == 0) {
|
||||
|
||||
0
iris-kmk/README.md
Normal file
0
iris-kmk/README.md
Normal file
28
iris-kmk/kb.py
Normal file
28
iris-kmk/kb.py
Normal file
@@ -0,0 +1,28 @@
|
||||
import board
|
||||
|
||||
from kmk.extensions.LED import LED
|
||||
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
|
||||
from kmk.scanners import DiodeOrientation
|
||||
|
||||
|
||||
class KMKKeyboard(_KMKKeyboard):
|
||||
col_pins = (
|
||||
board.GP2,
|
||||
board.GP3,
|
||||
board.GP29,
|
||||
board.GP27,
|
||||
board.GP6,
|
||||
board.GP5,
|
||||
)
|
||||
row_pins = (
|
||||
board.GP0,
|
||||
board.GP1,
|
||||
board.GP7,
|
||||
board.GP16,
|
||||
board.GP28,
|
||||
)
|
||||
|
||||
diode_orientation = DiodeOrientation.COLUMNS
|
||||
|
||||
leds = LED(led_pin=[board.GP27, board.GP28])
|
||||
_KMKKeyboard.extensions.append(leds)
|
||||
23
iris-kmk/main.py
Normal file
23
iris-kmk/main.py
Normal file
@@ -0,0 +1,23 @@
|
||||
from kb import KMKKeyboard
|
||||
|
||||
from kmk.extensions.media_keys import MediaKeys
|
||||
from kmk.extensions.rgb import RGB, AnimationModes
|
||||
from kmk.keys import KC
|
||||
from kmk.modules.encoder import EncoderHandler
|
||||
from kmk.modules.holdtap import HoldTap
|
||||
from kmk.modules.layers import Layers
|
||||
from kmk.modules.split import Split, SplitType
|
||||
|
||||
keyboard = KMKKeyboard()
|
||||
keyboard.debug_enabled = True
|
||||
|
||||
keyboard.modules.append(Layers())
|
||||
keyboard.modules.append(HoldTap())
|
||||
keyboard.extensions.append(MediaKeys())
|
||||
|
||||
keyboard.keymap = [
|
||||
[KC.A,]
|
||||
]
|
||||
|
||||
if __name__ == '__main__':
|
||||
keyboard.go()
|
||||
170
iris/keymap.c
170
iris/keymap.c
@@ -36,7 +36,7 @@ combo_t key_combos[] = {
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_BASE] = LAYOUT_wrapper(
|
||||
[_QWERTY] = LAYOUT_wrapper(
|
||||
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MUTE,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
@@ -44,7 +44,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
KC_LCTL, __________________BASE_L2____________________, __________________BASE_R2____________________, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
KC_LSFT, __________________BASE_L3____________________,AS_TOGG, _______, __________________BASE_R3____________________, KC_RSFT,
|
||||
KC_LSFT, __________________BASE_L3____________________,SPOTLI, _______, __________________BASE_R3____________________, KC_RSFT,
|
||||
//└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
|
||||
___________THUMB_L3________, ___________THUMB_R3________
|
||||
// └────────┴────────┴────────┘ └────────┴────────┴────────┘
|
||||
),
|
||||
|
||||
[_COLEMAK_DH] = LAYOUT_wrapper(
|
||||
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
|
||||
_______, _______, _______, _______, _______, KC_LPAD, SPOTLI, _______, _______, _______, _______, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
_______, __________________COLEML1____________________, __________________COLEMR1____________________, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
_______, __________________COLEML2____________________, __________________COLEMR2____________________, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
_______, __________________COLEML3____________________, SPOTLI, _______, __________________COLEMR3____________________, _______,
|
||||
//└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
|
||||
___________THUMB_L3________, ___________THUMB_R3________
|
||||
// └────────┴────────┴────────┘ └────────┴────────┴────────┘
|
||||
@@ -52,13 +66,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_NAV] = LAYOUT_wrapper(
|
||||
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
|
||||
_______, _______, _______, _______, _______, KC_LPAD, KC_PSCR, _______, _______, _______, _______, RGB_TOG,
|
||||
_______, _______, _______, _______, _______, KC_LPAD, SPOTLI, _______, _______, _______, _______, RGB_TOG,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
_______, __________________EMPTY_____________________, __________________NAV_R1____________________, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
_______, __________________NAV_L2____________________, __________________NAV_R2____________________, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
_______, __________________NAV_L3____________________, _______, _______, __________________NAV_R3____________________, _______,
|
||||
_______, __________________NAV_L3____________________, LINUX, _______, __________________NAV_R3____________________, _______,
|
||||
//└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
|
||||
___________THUMB_L3________, ___________THUMB_R3________
|
||||
// └────────┴────────┴────────┘ └────────┴────────┴────────┘
|
||||
@@ -66,7 +80,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_NUM] = LAYOUT_wrapper(
|
||||
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
|
||||
_______, _______, _______, _______, _______, KC_LPAD, KC_PSCR, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, KC_LPAD, SPOTLI, _______, _______, _______, _______, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
_______, __________________NUM_L1____________________, _________________BOOT_R1____________________, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
@@ -80,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_SYM] = LAYOUT_wrapper(
|
||||
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
|
||||
_______, _______, _______, _______, _______, KC_LPAD, KC_PSCR, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, KC_LPAD, SPOTLI, _______, _______, _______, _______, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
_______, __________________SYM_L1____________________, __________________EMPTY_____________________, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
@@ -94,7 +108,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_FUN] = LAYOUT_wrapper(
|
||||
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
|
||||
_______, _______, _______, _______, _______, KC_LPAD, KC_PSCR, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, KC_LPAD, SPOTLI, _______, _______, _______, _______, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
_______, __________________FUN_L1____________________, _________________BOOT_R1____________________, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
@@ -108,7 +122,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MUS] = LAYOUT_wrapper(
|
||||
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
|
||||
_______, _______, _______, _______, _______, KC_LPAD, KC_PSCR, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, KC_LPAD, SPOTLI, _______, _______, _______, _______, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
_______, _________________BOOT_L1____________________, __________________EMPTY_____________________, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
@@ -122,7 +136,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MOUSE] = LAYOUT_wrapper(
|
||||
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
|
||||
_______, _______, _______, _______, _______, KC_LPAD, KC_PSCR, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, KC_LPAD, SPOTLI, _______, _______, _______, _______, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
_______, __________________EMPTY_____________________, __________________MOU_R1____________________, _______,
|
||||
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
|
||||
@@ -135,9 +149,80 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
)
|
||||
};
|
||||
|
||||
|
||||
uint8_t mod_state;
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
static bool isLinux = false;
|
||||
mod_state = get_mods();
|
||||
switch (keycode) {
|
||||
case QWERTY:
|
||||
if (record->event.pressed) {
|
||||
set_single_persistent_default_layer(_QWERTY);
|
||||
}
|
||||
return false;
|
||||
case COLEMAK:
|
||||
if (record->event.pressed) {
|
||||
set_single_persistent_default_layer(_COLEMAK_DH);
|
||||
}
|
||||
return false;
|
||||
case LINUX:
|
||||
if (record->event.pressed) {
|
||||
isLinux = !isLinux;
|
||||
}
|
||||
return false;
|
||||
case COPY:
|
||||
if (record->event.pressed) {
|
||||
if (isLinux) {
|
||||
tap_code16(LCTL(KC_C));
|
||||
} else {
|
||||
tap_code16(LGUI(KC_C));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
case PASTE:
|
||||
if (record->event.pressed) {
|
||||
if (isLinux) {
|
||||
tap_code16(LCTL(KC_V));
|
||||
} else {
|
||||
tap_code16(LGUI(KC_V));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
case CUT:
|
||||
if (record->event.pressed) {
|
||||
if (isLinux) {
|
||||
tap_code16(LCTL(KC_X));
|
||||
} else {
|
||||
tap_code16(LGUI(KC_X));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
case UNDO:
|
||||
if (record->event.pressed) {
|
||||
if (isLinux) {
|
||||
tap_code16(LCTL(KC_Z));
|
||||
} else {
|
||||
tap_code16(LGUI(KC_Z));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
case REDO:
|
||||
if (record->event.pressed) {
|
||||
if (isLinux) {
|
||||
tap_code16(LCTL(KC_Y));
|
||||
} else {
|
||||
tap_code16(LSG(KC_Z));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
case SALL:
|
||||
if (record->event.pressed) {
|
||||
if (isLinux) {
|
||||
tap_code16(LCTL(KC_A));
|
||||
} else {
|
||||
tap_code16(LGUI(KC_A));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
case M_PASS1:
|
||||
if (record->event.pressed) {
|
||||
SEND_STRING("P0plarLake!2023");
|
||||
@@ -145,17 +230,22 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
return false;
|
||||
case M_PASS2:
|
||||
if (record->event.pressed) {
|
||||
SEND_STRING("Thel0ve0fchrist!");
|
||||
SEND_STRING("CindieVerano!2024");
|
||||
}
|
||||
return false;
|
||||
case M_PASS3:
|
||||
if (record->event.pressed) {
|
||||
SEND_STRING("6754");
|
||||
SEND_STRING("1290");
|
||||
}
|
||||
return false;
|
||||
case M_PASS4:
|
||||
if (record->event.pressed) {
|
||||
SEND_STRING("10242677");
|
||||
SEND_STRING("Thel0ve0fchrist!");
|
||||
}
|
||||
return false;
|
||||
case SPOTLI:
|
||||
if (record->event.pressed) {
|
||||
tap_code16(LGUI(KC_SPACE));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -163,11 +253,63 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
}
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_BASE] = { ENCODER_CCW_CW(KC_PGUP, KC_PGDN), ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[_QWERTY] = { ENCODER_CCW_CW(KC_PGUP, KC_PGDN), ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[_NAV] = { ENCODER_CCW_CW(KC_MPRV, KC_MNXT), ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_MPRV, KC_MNXT), ENCODER_CCW_CW(RGB_MOD, RGB_RMOD) },
|
||||
[_NUM] = { ENCODER_CCW_CW(C(KC_LEFT), C(KC_RIGHT)), ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(RGB_SAD, RGB_SAI), ENCODER_CCW_CW(KC_B, KC_B) },
|
||||
[_SYM] = { ENCODER_CCW_CW(C(KC_TAB), S(C(KC_TAB))), ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B) },
|
||||
[_MOUSE] = { ENCODER_CCW_CW(RGB_SPD, RGB_SPI), ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B) },
|
||||
[_FUN] = { ENCODER_CCW_CW(RGB_SPD, RGB_SPI), ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B) },
|
||||
[_MUS] = { ENCODER_CCW_CW(RGB_SPD, RGB_SPI), ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(KC_B, KC_B) },
|
||||
[_COLEMAK_DH] = { ENCODER_CCW_CW(KC_PGUP, KC_PGDN), ENCODER_CCW_CW(KC_A, KC_A), ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
};
|
||||
|
||||
|
||||
// Onboard LED
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
// Configure LED
|
||||
void keyboard_post_init_user(void) {
|
||||
// Initialize RGB to static black
|
||||
rgblight_enable_noeeprom();
|
||||
rgblight_sethsv_noeeprom(HSV_BLACK);
|
||||
rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
|
||||
}
|
||||
|
||||
// Change LED
|
||||
void housekeeping_task_user(void) {
|
||||
// Caps lock status
|
||||
if (host_keyboard_led_state().caps_lock) {
|
||||
rgblight_setrgb_at(4, 4, 0, 0);
|
||||
} else {
|
||||
// Layers
|
||||
switch (get_highest_layer(layer_state | default_layer_state)) {
|
||||
case 0:
|
||||
rgblight_setrgb_at(4, 4, 4, 0);
|
||||
break;
|
||||
case 1:
|
||||
rgblight_setrgb_at(4, 4, 4, 0);
|
||||
break;
|
||||
case 2:
|
||||
rgblight_setrgb_at(4, 4, 4, 0);
|
||||
break;
|
||||
case 3:
|
||||
rgblight_setrgb_at(4, 4, 4, 0);
|
||||
break;
|
||||
case 4:
|
||||
rgblight_setrgb_at(0, 0, 4, 0);
|
||||
break;
|
||||
case 5:
|
||||
rgblight_setrgb_at(0, 4, 0, 0);
|
||||
break;
|
||||
case 6:
|
||||
rgblight_setrgb_at(0, 0, 4, 0);
|
||||
break;
|
||||
case 7:
|
||||
rgblight_setrgb_at(0, 0, 4, 0);
|
||||
break;
|
||||
case 8:
|
||||
rgblight_setrgb_at(0, 0, 4, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
136
iris/readme.md
136
iris/readme.md
@@ -1,137 +1 @@
|
||||
# Iris rev. 6 keymap by radlinskii
|
||||
|
||||

|
||||
|
||||
## Features:
|
||||
|
||||
- [RGB Lightning layers](https://docs.qmk.fm/#/feature_rgblight?id=lighting-layers)
|
||||
- [MOUSE KEYS](https://docs.qmk.fm/#/keycodes?id=mouse-keys)
|
||||
- [MOD-TAPS](https://docs.qmk.fm/#/mod_tap)
|
||||
|
||||
## Layers:
|
||||
|
||||
### colemak - default
|
||||
|
||||
> [Colemak DH](https://colemakmods.github.io/mod-dh/) keyboard layout.
|
||||
|
||||
<details>
|
||||
<summary>
|
||||
keymap
|
||||
</summary>
|
||||
|
||||
<img width="800" alt="colemak layer keymap" src="https://user-images.githubusercontent.com/26116041/173403537-f2222651-c8ea-4c8b-b828-97520a222344.png">
|
||||
|
||||
</details>
|
||||
<details>
|
||||
<summary>
|
||||
lightning
|
||||
</summary>
|
||||
|
||||
|
||||
<img width="800" alt="colemak layer lightning" src="https://user-images.githubusercontent.com/26116041/173681398-cdcff1a5-ae79-4409-950a-1b671c350f07.jpeg">
|
||||
|
||||
</details>
|
||||
|
||||
### qwerty - alternative default
|
||||
|
||||
> Can be set as persistent default layer.
|
||||
|
||||
<details>
|
||||
<summary>
|
||||
keymap
|
||||
</summary>
|
||||
|
||||
<img width="800" alt="qwerty layer keymap" src="https://user-images.githubusercontent.com/26116041/173403371-1551976a-2f95-4dbd-ba07-96936651871d.png">
|
||||
|
||||
</details>
|
||||
<details>
|
||||
<summary>
|
||||
lightning
|
||||
</summary>
|
||||
|
||||
<img width="800" alt="qwerty layer lightning" src="https://user-images.githubusercontent.com/26116041/173681525-aee3c927-995a-4f83-b688-ed8bfd3f8bb6.jpeg">
|
||||
|
||||
</details>
|
||||
|
||||
### numeric + symbols
|
||||
|
||||
<details>
|
||||
<summary>
|
||||
keymap
|
||||
</summary>
|
||||
|
||||
<img width="800" alt="numeric and symbols layer keymap" src="https://user-images.githubusercontent.com/26116041/173403164-b0520501-761b-4567-bf04-57f7b6f7dd4d.png">
|
||||
|
||||
</details>
|
||||
<details>
|
||||
<summary>
|
||||
lightning
|
||||
</summary>
|
||||
|
||||
<img width="800" alt="numeric and symbols layer lightning" src="https://user-images.githubusercontent.com/26116041/173681689-0b864e35-0e02-4204-a469-6e872e704903.jpeg">
|
||||
|
||||
</details>
|
||||
|
||||
### navigation
|
||||
|
||||
> Layer with arrow navigation.
|
||||
|
||||
<details>
|
||||
<summary>
|
||||
keymap
|
||||
</summary>
|
||||
|
||||
<img width="800" alt="navigation layer keymap" src="https://user-images.githubusercontent.com/26116041/173408142-1e1c297e-57db-42f8-bc18-a04dd4e202c9.png">
|
||||
|
||||
</details>
|
||||
<details>
|
||||
<summary>
|
||||
lightning
|
||||
</summary>
|
||||
|
||||
<img width="800" alt="navigation layer lightning" src="https://user-images.githubusercontent.com/26116041/173681859-fa6f071a-98e9-48f8-a9a0-76d7510b302a.jpeg">
|
||||
|
||||
</details>
|
||||
|
||||
### mouse
|
||||
|
||||
> Layer with mouse navigation on the same keys as arrow navigation.
|
||||
|
||||
<details>
|
||||
<summary>
|
||||
keymap
|
||||
</summary>
|
||||
|
||||
<img width="800" alt="mouse layer keymap" src="https://user-images.githubusercontent.com/26116041/173402955-050ffd77-7b60-45dc-8e89-54cd43793132.png">
|
||||
|
||||
</details>
|
||||
<details>
|
||||
<summary>
|
||||
lightning
|
||||
</summary>
|
||||
|
||||
<img width="800" alt="mouse layer lightning" src="https://user-images.githubusercontent.com/26116041/173682436-07c32e5e-f415-463d-8c93-d2cbd4e406a1.jpeg">
|
||||
|
||||
</details>
|
||||
|
||||
### media and miscellaneous
|
||||
|
||||
> Used for media keys, switching default layer and keyboard reset.
|
||||
|
||||
<details>
|
||||
<summary>
|
||||
keymap
|
||||
</summary>
|
||||
|
||||
<img width="800" alt="media and miscellaneous layer keymap" src="https://user-images.githubusercontent.com/26116041/173402837-75ce8ab1-7fbe-454b-b165-b22d171f9ad1.png">
|
||||
|
||||
</details>
|
||||
<details>
|
||||
<summary>
|
||||
lightning
|
||||
</summary>
|
||||
|
||||
<img width="800" alt="media and miscellaneous layer lightning" src="https://user-images.githubusercontent.com/26116041/173682188-3eab9c09-d466-4729-89ac-48e09f55564c.jpeg">
|
||||
|
||||
</details>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user