feat: update sofle keyboard
- use encoder to volume - move home row mod to middle row - unset QUICK_TAP_TERM - minor symbols adjustments
This commit is contained in:
parent
6f9a1c59d2
commit
4df385f9e1
2 changed files with 62 additions and 62 deletions
|
|
@ -78,45 +78,46 @@ enum custom_keycodes {
|
|||
KC_SYMBOLS = SAFE_RANGE,
|
||||
KC_SYSTEM,
|
||||
KC_ADJUST,
|
||||
KC_ENC_MODE,
|
||||
// KC_ENC_MODE,
|
||||
KC_D_MUTE,
|
||||
};
|
||||
|
||||
// Left-hand home row mods
|
||||
#define HOME_Q LGUI_T(ES_Q)
|
||||
#define HOME_W LALT_T(ES_W)
|
||||
#define HOME_E LSFT_T(ES_E)
|
||||
#define HOME_R LCTL_T(ES_R)
|
||||
#define HOME_A LGUI_T(ES_A)
|
||||
#define HOME_S LALT_T(ES_S)
|
||||
#define HOME_D LSFT_T(ES_D)
|
||||
#define HOME_F LCTL_T(ES_F)
|
||||
|
||||
// Right-hand home row mods
|
||||
#define HOME_U RCTL_T(ES_U)
|
||||
#define HOME_I RSFT_T(ES_I)
|
||||
#define HOME_O LALT_T(ES_O)
|
||||
#define HOME_P RGUI_T(ES_P)
|
||||
#define HOME_J RCTL_T(ES_J)
|
||||
#define HOME_K RSFT_T(ES_K)
|
||||
#define HOME_L LALT_T(ES_L)
|
||||
#define HOME_NTIL RGUI_T(ES_NTIL)
|
||||
|
||||
// Other multi pourpose keys
|
||||
#define SIDE_TAB LT(_NUMPAD, KC_TAB) // layer on held, tab on tap
|
||||
#define CTRL_ESC RCTL_T(KC_ESC)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_QWERTY] = LAYOUT(
|
||||
ES_PIPE, ES_1, ES_2, ES_3, ES_4, ES_5, ES_6, ES_7, ES_8, ES_9, ES_0, ES_QUOT,
|
||||
SIDE_TAB, HOME_Q, HOME_W, HOME_E, HOME_R, ES_T, ES_Y, HOME_U, HOME_I, HOME_O, HOME_P, ES_ACUT,
|
||||
KC_ESC, ES_A, ES_S, ES_D, ES_F, ES_G, ES_H, ES_J, ES_K, ES_L, ES_NTIL, KC_BSPC,
|
||||
KC_LSFT, ES_Z, ES_X, ES_C, ES_V, ES_B, KC_ENC_MODE, XXXXXXX, ES_N, ES_M, ES_COMM,ES_DOT, ES_MINS, KC_RSFT,
|
||||
ES_PIPE, ES_1, ES_2, ES_3, ES_4, ES_5, ES_6, ES_7, ES_8, ES_9, ES_0, ES_QUOT,
|
||||
SIDE_TAB, ES_Q, ES_W, ES_E, ES_R, ES_T, ES_Y, ES_U, ES_I, ES_O, ES_P, ES_ACUT,
|
||||
CTRL_ESC, HOME_A, HOME_S, HOME_D, HOME_F, ES_G, ES_H, HOME_J, HOME_K, HOME_L, HOME_NTIL,KC_BSPC,
|
||||
KC_LSFT, ES_Z, ES_X, ES_C, ES_V, ES_B, KC_MUTE, XXXXXXX, ES_N, ES_M, ES_COMM,ES_DOT, ES_MINS, KC_RSFT,
|
||||
KC_LALT, KC_LCTL, KC_LGUI, KC_SPC, KC_SYMBOLS, KC_SYSTEM, KC_ENT, KC_RGUI, KC_RCTL, KC_ALGR
|
||||
),
|
||||
[_SYMBOLS] = LAYOUT(
|
||||
ES_MORD, S(ES_1), S(ES_2), S(ES_3), S(ES_4), S(ES_5), S(ES_6), S(ES_7), S(ES_8), S(ES_9), S(ES_0), S(ES_QUOT),
|
||||
_______, ES_IQUE, ES_QUES, ES_LBRC, ES_RBRC, ES_QUOT, ES_ASTR, ES_SLSH, ES_PLUS, ES_MINS, ES_TILD, ES_CIRC,
|
||||
_______, ES_LABK, ES_RABK, ES_LPRN, ES_RPRN, ES_DQUO, ES_PIPE, ES_DLR, ES_NUMB, ES_EQL, ES_BSLS, _______,
|
||||
_______, ES_IQUE, ES_QUES, ES_LBRC, ES_RBRC, ES_QUOT, ES_ASTR, ES_SLSH, ES_PLUS, ES_MINS, ES_BSLS, ES_CIRC,
|
||||
_______, ES_LABK, ES_RABK, ES_LPRN, ES_RPRN, ES_DQUO, ES_PIPE, ES_DLR, ES_NUMB, ES_EQL, ES_TILD, _______,
|
||||
_______, ES_IEXL, ES_EXLM, ES_LCBR, ES_RCBR, ES_GRV, _______, _______, ES_AMPR, ES_PERC, ES_SCLN, ES_COLN, ES_UNDS, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
[_SYSTEM] = LAYOUT(
|
||||
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
|
||||
_______, KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, XXXXXXX, XXXXXXX, KC_LCTL, KC_LSFT, KC_LALT, KC_LGUI, KC_BSPC,
|
||||
_______, XXXXXXX, XXXXXXX, S(KC_PSCR), KC_PSCR, KC_PGUP, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, KC_DEL,
|
||||
_______, KC_UNDO, KC_CUT, KC_COPY, KC_PASTE, XXXXXXX, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, XXXXXXX, XXXXXXX,
|
||||
_______, XXXXXXX, XXXXXXX, S(KC_PSCR), KC_PSCR, XXXXXXX, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_LGUI, KC_BSPC,
|
||||
_______, KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_VOLU, KC_DEL,
|
||||
_______, KC_UNDO, KC_CUT, KC_COPY, KC_PASTE,XXXXXXX, _______, _______, KC_HOME, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLD, XXXXXXX,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
[_ADJUST] = LAYOUT(
|
||||
|
|
@ -127,43 +128,43 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
[_NUMPAD] = LAYOUT(
|
||||
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, KC_NUM, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_CIRC, KC_P7, KC_P8, KC_P9, KC_ASTR, XXXXXXX,
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MINS, KC_P4, KC_P5, KC_P6, KC_EQL, KC_PIPE,
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, KC_PLUS, KC_P1, KC_P2, KC_P3, KC_SLSH, _______,
|
||||
_______, OSM(MOD_MEH), _______, _______, _______, _______, _______, KC_P0, KC_PDOT, _______
|
||||
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, KC_P7, KC_P8, KC_P9, XXXXXXX, XXXXXXX,
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_CIRC, KC_P4, KC_P5, KC_P6, KC_ASTR, XXXXXXX,
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MINS, KC_P1, KC_P2, KC_P3, KC_EQL, KC_BSPC,
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, KC_PLUS, KC_P0, KC_P0, KC_PDOT, KC_SLSH, _______,
|
||||
_______, OSM(MOD_MEH), _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
};
|
||||
|
||||
enum ENCODER_MODE {
|
||||
_ENCODER_PAGE = 0,
|
||||
_ENCODER_CHARACTER,
|
||||
};
|
||||
//enum ENCODER_MODE {
|
||||
// _ENCODER_PAGE = 0,
|
||||
// _ENCODER_CHARACTER,
|
||||
//};
|
||||
|
||||
enum ENCODER_MODE CURRENT_ENCODER_MODE = _ENCODER_CHARACTER;
|
||||
//enum ENCODER_MODE CURRENT_ENCODER_MODE = _ENCODER_CHARACTER;
|
||||
|
||||
#ifdef ENCODER_ENABLE
|
||||
|
||||
bool encoder_update_user(uint8_t index, bool clockwise) {
|
||||
// Uncomment this to use the encoder to control the volume
|
||||
if (index == 0) {
|
||||
// if (clockwise) {
|
||||
// tap_code(KC_VOLU);
|
||||
// } else {
|
||||
// tap_code(KC_VOLD);
|
||||
// }
|
||||
if (clockwise) {
|
||||
tap_code(KC_VOLU);
|
||||
} else {
|
||||
tap_code(KC_VOLD);
|
||||
}
|
||||
|
||||
bool is_default_layer = get_highest_layer(layer_state) == _DEFAULTS;
|
||||
|
||||
if (CURRENT_ENCODER_MODE == _ENCODER_PAGE && clockwise) {
|
||||
tap_code(is_default_layer ? KC_PGDN : KC_END);
|
||||
} else if (CURRENT_ENCODER_MODE == _ENCODER_PAGE && !clockwise) {
|
||||
tap_code(is_default_layer ? KC_PGUP : KC_HOME);
|
||||
} else if (CURRENT_ENCODER_MODE == _ENCODER_CHARACTER && clockwise) {
|
||||
tap_code(is_default_layer ? KC_DOWN : KC_RGHT);
|
||||
} else if (CURRENT_ENCODER_MODE == _ENCODER_CHARACTER && !clockwise) {
|
||||
tap_code(is_default_layer ? KC_UP : KC_LEFT);
|
||||
}
|
||||
// bool is_default_layer = get_highest_layer(layer_state) == _DEFAULTS;
|
||||
//
|
||||
// if (CURRENT_ENCODER_MODE == _ENCODER_PAGE && clockwise) {
|
||||
// tap_code(is_default_layer ? KC_PGDN : KC_END);
|
||||
// } else if (CURRENT_ENCODER_MODE == _ENCODER_PAGE && !clockwise) {
|
||||
// tap_code(is_default_layer ? KC_PGUP : KC_HOME);
|
||||
// } else if (CURRENT_ENCODER_MODE == _ENCODER_CHARACTER && clockwise) {
|
||||
// tap_code(is_default_layer ? KC_DOWN : KC_RGHT);
|
||||
// } else if (CURRENT_ENCODER_MODE == _ENCODER_CHARACTER && !clockwise) {
|
||||
// tap_code(is_default_layer ? KC_UP : KC_LEFT);
|
||||
// }
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
@ -205,18 +206,18 @@ static void print_status_narrow(void) {
|
|||
oled_write_ln_P(PSTR("Undef\n"), false);
|
||||
}
|
||||
|
||||
oled_write_ln_P(PSTR("\nENCDR"), false);
|
||||
|
||||
switch (CURRENT_ENCODER_MODE) {
|
||||
case _ENCODER_PAGE:
|
||||
oled_write_ln_P(PSTR("Page"), false);
|
||||
break;
|
||||
case _ENCODER_CHARACTER:
|
||||
oled_write_ln_P(PSTR("Char"), false);
|
||||
break;
|
||||
default:
|
||||
oled_write_ln_P(PSTR("Undef\n"), false);
|
||||
}
|
||||
// oled_write_ln_P(PSTR("\nENCDR"), false);
|
||||
//
|
||||
// switch (CURRENT_ENCODER_MODE) {
|
||||
// case _ENCODER_PAGE:
|
||||
// oled_write_ln_P(PSTR("Page"), false);
|
||||
// break;
|
||||
// case _ENCODER_CHARACTER:
|
||||
// oled_write_ln_P(PSTR("Char"), false);
|
||||
// break;
|
||||
// default:
|
||||
// oled_write_ln_P(PSTR("Undef\n"), false);
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -240,11 +241,11 @@ bool oled_task_user(void) {
|
|||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
switch (keycode) {
|
||||
case KC_ENC_MODE:
|
||||
if (record->event.pressed) {
|
||||
CURRENT_ENCODER_MODE = (CURRENT_ENCODER_MODE+1) % (_ENCODER_CHARACTER+1);
|
||||
}
|
||||
return false;
|
||||
// case KC_ENC_MODE:
|
||||
// if (record->event.pressed) {
|
||||
// CURRENT_ENCODER_MODE = (CURRENT_ENCODER_MODE+1) % (_ENCODER_CHARACTER+1);
|
||||
// }
|
||||
// return false;
|
||||
case KC_SYMBOLS:
|
||||
if (record->event.pressed) {
|
||||
layer_on(_SYMBOLS);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue