Исправления, чтоб QMK дал скомпилироваться
This commit is contained in:
parent
bd738453ce
commit
6d1b406bf2
4 changed files with 60 additions and 44 deletions
22
README.md
22
README.md
|
|
@ -9,7 +9,15 @@
|
|||
2) Сделать нормальный once shift, а не через смену слоя на +1 как в стандартном lang_shift
|
||||
3) Написать более подробный гайд по прошивке ниже
|
||||
|
||||
# Как прошить
|
||||
# Как прошить на Linux
|
||||
|
||||
## Vial
|
||||
|
||||
Когда то будет
|
||||
|
||||
https://get.vial.today/docs/porting-to-vial.html
|
||||
|
||||
А пока старый вариант гайда
|
||||
|
||||
Создать файл прошивки
|
||||
|
||||
|
|
@ -19,9 +27,17 @@ make crkbd/rev1:vial
|
|||
|
||||
qmk flash -kb crkbd/rev1 -km vial
|
||||
|
||||
https://get.vial.today/docs/porting-to-vial.html
|
||||
## QMK
|
||||
|
||||
https://docs.qmk.fm/#/newbs_getting_started
|
||||
|
||||
В терминале пишем это
|
||||
1) sudo pacman --needed --noconfirm -S git python-pip libffi
|
||||
2) paru -S qmk-git
|
||||
3) qmk setup
|
||||
4) Переносим в каталог ~/qmk_firmware/keyboards/crkbd/keymaps/default свои настройки. Либо можно создать свой каталог в keymaps вместо default и туда засунуть свои настройки.
|
||||
5) qmk compile -kb crkbd/rev1 -km default
|
||||
|
||||
https://docs.qmk.fm/#/newbs_flashing
|
||||
|
||||
# Моя раскладка
|
||||

|
||||
|
|
|
|||
24
qmk/keymap.c
24
qmk/keymap.c
|
|
@ -138,7 +138,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
//|-----------+-----------+-----------+-----------+-----------+-----------| |-----------+-----------+-----------+-----------+-----------+-----------|
|
||||
KC_LCTL, KC_B, KC_Z, KC_X, KC_C, KC_V, KC_N, KC_LEFT, KC_DOWN, KC_RGHT, KC_M, KC_SLSH,
|
||||
//|-----------+-----------+-----------+-----------+-----------+-----------+-----------||-----------+-----------+-----------+-----------+-----------+-----------+-----------|
|
||||
KC_LALT, KC_SPC, LT(L_NUM, KC_ESC) KC_H, KC_SPC, LT(L_FUN, KC_ENT)
|
||||
KC_LALT, KC_SPC, LT(L_NUM, KC_ESC), KC_H, KC_SPC, LT(L_FUN, KC_ENT)
|
||||
//`+--------------------+--------------------+--------------------||--------------------+--------------------+--------------------+'
|
||||
)
|
||||
};
|
||||
|
|
@ -160,13 +160,13 @@ void user_timer(void) {
|
|||
layer_state_t default_layer_state_set_user(layer_state_t state) {
|
||||
switch (get_highest_layer(state)) {
|
||||
case L_ENG:
|
||||
rgblight_sethsv(HSV_ROSE);
|
||||
rgblight_sethsv(HSV_PINK); // HSV_PINK
|
||||
break;
|
||||
case L_GAME:
|
||||
rgblight_sethsv(HSV_ORANGE);
|
||||
rgblight_sethsv(HSV_ORANGE); // HSV_ORANGE
|
||||
break;
|
||||
default: // for any other layers, or the default layer
|
||||
rgblight_sethsv(HSV_WHITE);
|
||||
rgblight_sethsv(HSV_WHITE); // HSV_WHITE
|
||||
break;
|
||||
}
|
||||
return state;
|
||||
|
|
@ -175,28 +175,28 @@ layer_state_t default_layer_state_set_user(layer_state_t state) {
|
|||
layer_state_t layer_state_set_user(layer_state_t state) {
|
||||
switch (get_highest_layer(state)) {
|
||||
case L_RU:
|
||||
rgblight_sethsv(HSV_VIOLET);
|
||||
rgblight_sethsv(HSV_PURPLE); // HSV_PURPLE
|
||||
break;
|
||||
case L_MEDIA:
|
||||
rgblight_sethsv(HSV_MAGENTA);
|
||||
rgblight_sethsv(HSV_MAGENTA); // HSV_MAGENTA
|
||||
break;
|
||||
case L_NAV:
|
||||
rgblight_sethsv(HSV_CYAN);
|
||||
rgblight_sethsv(HSV_CYAN); // HSV_CYAN
|
||||
break;
|
||||
case L_MOUSE:
|
||||
rgblight_sethsv(HSV_YELLOW);
|
||||
rgblight_sethsv(HSV_YELLOW); // HSV_YELLOW
|
||||
break;
|
||||
case L_SYM:
|
||||
rgblight_sethsv(HSV_GREEN);
|
||||
rgblight_sethsv(HSV_GREEN); // HSV_GREEN
|
||||
break;
|
||||
case L_NUM:
|
||||
rgblight_sethsv(HSV_BLUE);
|
||||
rgblight_sethsv(HSV_BLUE); // HSV_BLUE
|
||||
break;
|
||||
case L_FUN:
|
||||
rgblight_sethsv(HSV_RED);
|
||||
rgblight_sethsv(HSV_RED); // HSV_RED
|
||||
break;
|
||||
default: // for any other layers, or the default layer
|
||||
rgblight_sethsv(HSV_WHITE);
|
||||
rgblight_sethsv(HSV_WHITE); // HSV_WHITE
|
||||
break;
|
||||
}
|
||||
return state;
|
||||
|
|
|
|||
|
|
@ -120,9 +120,9 @@ void shift_activate(Shift shift) {
|
|||
if (shift_current != shift) {
|
||||
shift_timer = timer_read();
|
||||
if (shift) {
|
||||
register_code(KC_LSHIFT);
|
||||
register_code(KC_LSFT);
|
||||
} else {
|
||||
unregister_code(KC_LSHIFT);
|
||||
unregister_code(KC_LSFT);
|
||||
}
|
||||
}
|
||||
shift_current = shift;
|
||||
|
|
@ -328,10 +328,10 @@ void lang_synchronize(void) {
|
|||
case LANG_CHANGE_CAPS: {
|
||||
// Костыль, потому что при нажатии Shift+Caps включается режим Caps, а не переключение языка :facepalm:
|
||||
if (shift_current == 1) {
|
||||
unregister_code(KC_LSHIFT);
|
||||
unregister_code(KC_LSFT);
|
||||
register_code(KC_CAPS);
|
||||
unregister_code(KC_CAPS);
|
||||
register_code(KC_LSHIFT);
|
||||
register_code(KC_LSFT);
|
||||
} else {
|
||||
register_code(KC_CAPS);
|
||||
unregister_code(KC_CAPS);
|
||||
|
|
@ -339,46 +339,46 @@ void lang_synchronize(void) {
|
|||
} break;
|
||||
case LANG_CHANGE_ALT_SHIFT: {
|
||||
register_code(KC_LALT);
|
||||
register_code(KC_LSHIFT);
|
||||
unregister_code(KC_LSHIFT);
|
||||
register_code(KC_LSFT);
|
||||
unregister_code(KC_LSFT);
|
||||
unregister_code(KC_LALT);
|
||||
|
||||
// Костыль, потому что при зажатом шифте если хочется нажать клавишу, которая переключает язык, то шифт слетает...
|
||||
if (shift_current == 1) {
|
||||
register_code(KC_LSHIFT);
|
||||
register_code(KC_LSFT);
|
||||
}
|
||||
} break;
|
||||
case LANG_CHANGE_SHIFT_ALT: {
|
||||
register_code(KC_LSHIFT);
|
||||
register_code(KC_LSFT);
|
||||
register_code(KC_LALT);
|
||||
unregister_code(KC_LALT);
|
||||
unregister_code(KC_LSHIFT);
|
||||
unregister_code(KC_LSFT);
|
||||
|
||||
// Костыль, потому что при зажатом шифте если хочется нажать клавишу, которая переключает язык, то шифт слетает...
|
||||
if (shift_current == 1) {
|
||||
register_code(KC_LSHIFT);
|
||||
register_code(KC_LSFT);
|
||||
}
|
||||
} break;
|
||||
case LANG_CHANGE_CTRL_SHIFT: {
|
||||
register_code(KC_LCTRL);
|
||||
register_code(KC_LSHIFT);
|
||||
unregister_code(KC_LSHIFT);
|
||||
register_code(KC_LCTL);
|
||||
register_code(KC_LSFT);
|
||||
unregister_code(KC_LSFT);
|
||||
unregister_code(KC_LCTL);
|
||||
|
||||
// Костыль, потому что при зажатом шифте если хочется нажать клавишу, которая переключает язык, то шифт слетает...
|
||||
if (shift_current == 1) {
|
||||
register_code(KC_LSHIFT);
|
||||
register_code(KC_LSFT);
|
||||
}
|
||||
} break;
|
||||
case LANG_CHANGE_SHIFT_CTRL: {
|
||||
register_code(KC_LSHIFT);
|
||||
register_code(KC_LCTRL);
|
||||
register_code(KC_LSFT);
|
||||
register_code(KC_LCTL);
|
||||
unregister_code(KC_LCTL);
|
||||
unregister_code(KC_LSHIFT);
|
||||
unregister_code(KC_LSFT);
|
||||
|
||||
// Костыль, потому что при зажатом шифте если хочется нажать клавишу, которая переключает язык, то шифт слетает...
|
||||
if (shift_current == 1) {
|
||||
register_code(KC_LSHIFT);
|
||||
register_code(KC_LSFT);
|
||||
}
|
||||
} break;
|
||||
case LANG_CHANGE_WIN_SPACE: {
|
||||
|
|
@ -602,21 +602,21 @@ bool lang_shift_process_english_modifiers(Key key, keyrecord_t* record) {
|
|||
#define Un(x) unregister_code(KC_L ## x)
|
||||
|
||||
switch (key) {
|
||||
PROCESS(CTRL_0, Rg(CTRL), Un(CTRL), false);
|
||||
PROCESS(CTRL_0, Rg(CTL), Un(CTL), false);
|
||||
PROCESS(ALT_0, Rg(ALT), Un(ALT), false);
|
||||
PROCESS(WIN_0, Rg(GUI), Un(GUI), false);
|
||||
PROCESS(CTAL_0, { Rg(CTRL); Rg(ALT); }, { Un(ALT); Un(CTRL); }, false);
|
||||
PROCESS(SHAL_0, { Rg(SHIFT); Rg(ALT); }, { Un(ALT); Un(SHIFT); }, false);
|
||||
PROCESS(CTSH_0, { Rg(CTRL); Rg(SHIFT); }, { Un(SHIFT); Un(CTRL); }, false);
|
||||
PROCESS(MCAS_0, { Rg(CTRL); Rg(ALT); Rg(SHIFT); }, { Un(SHIFT); Un(ALT); Un(CTRL); }, false);
|
||||
PROCESS(CTAL_0, { Rg(CTL); Rg(ALT); }, { Un(ALT); Un(CTL); }, false);
|
||||
PROCESS(SHAL_0, { Rg(SFT); Rg(ALT); }, { Un(ALT); Un(SFT); }, false);
|
||||
PROCESS(CTSH_0, { Rg(CTL); Rg(SFT); }, { Un(SFT); Un(CTL); }, false);
|
||||
PROCESS(MCAS_0, { Rg(CTL); Rg(ALT); Rg(SFT); }, { Un(SFT); Un(ALT); Un(CTL); }, false);
|
||||
|
||||
PROCESS(CTRL_EN, Rg(CTRL), Un(CTRL), true);
|
||||
PROCESS(CTRL_EN, Rg(CTL), Un(CTL), true);
|
||||
PROCESS(ALT_EN, Rg(ALT), Un(ALT), true);
|
||||
PROCESS(WIN_EN, Rg(GUI), Un(GUI), true);
|
||||
PROCESS(CTAL_EN, { Rg(CTRL); Rg(ALT); }, { Un(ALT); Un(CTRL); }, true);
|
||||
PROCESS(SHAL_EN, { Rg(SHIFT); Rg(ALT); }, { Un(ALT); Un(SHIFT); }, true);
|
||||
PROCESS(CTSH_EN, { Rg(CTRL); Rg(SHIFT); }, { Un(SHIFT); Un(CTRL); }, true);
|
||||
PROCESS(MCAS_EN, { Rg(CTRL); Rg(ALT); Rg(SHIFT); }, { Un(SHIFT); Un(ALT); Un(CTRL); }, true);
|
||||
PROCESS(CTAL_EN, { Rg(CTL); Rg(ALT); }, { Un(ALT); Un(CTL); }, true);
|
||||
PROCESS(SHAL_EN, { Rg(SFT); Rg(ALT); }, { Un(ALT); Un(SFT); }, true);
|
||||
PROCESS(CTSH_EN, { Rg(CTL); Rg(SFT); }, { Un(SFT); Un(CTL); }, true);
|
||||
PROCESS(MCAS_EN, { Rg(CTL); Rg(ALT); Rg(SFT); }, { Un(SFT); Un(ALT); Un(CTL); }, true);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ NKRO_ENABLE = yes
|
|||
RGBLIGHT_ENABLE = yes
|
||||
# Enable keyboard underlight functionality
|
||||
|
||||
TAP_DANCE_ENABLE = yes
|
||||
TAP_DANCE_ENABLE = no
|
||||
# Чтоб на нажатие клавиши было что-то одно, а на зажатие - другое. Называется TapDance
|
||||
|
||||
# TAPPING_TERM_PER_KEY = yes
|
||||
|
|
|
|||
Reference in a new issue