Содержание
TLDR
В config/<keyboard_name>.conf:
CONFIG_ZMK_STUDIO=yВ build.yaml:
---include: - board: <some board> shield: <some shield> snippet: studio-rpc-usb-uart cmake-args: -DCONFIG_ZMK_STUDIO=yДобавляем куда-то кнопку &studio_unlock в config/<keyboard_name>.keymap.
&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &trans &trans &trans &trans
&trans &trans&trans &studio_unlockА зачем
Механические клавы становятся все менее нишевой темой, и все больше людей любят поклацать, бесит ли это коллег или нет. Посему и ковыряться с кучей конфигов только ради того, чтобы в очередной раз поменять местами Пробел и Shift на thumb-кластере, нормальным людям не особо нравится.
Типичный пример того, что нужно сделать:
-
Открываем файл <keyboard_name>.keymap
-
Правим нужные нам клавиши
-
Делаем коммит
-
Пушим
-
Ждем, пока пройдет CI1
-
Скачиваем архив с прошивками
-
Распаковываем
-
Переводим плату в режим bootloader-а, не забыв её подключить к компу
-
Закидываем
-
…
-
PROFIT
И это ведь еще и happy-path. А если опечатались? А если перепутали и не на ту кнопку навесили? На самом деле даже задроту вроде меня иногда хочется просто тупо натыкать кнопочки в GUI-е.
Вот если Вы решили что-то сделать, чтобы было проще, то этот гайд для Вас.
Как
Гайд целиком и полностью взят отсюда.
В новой ветке2 в config/<keyboard_name>.conf добавляем:
CONFIG_ZMK_STUDIO=yВ build.yaml добавляем:
---include: - board: <some board> shield: <some shield> snippet: studio-rpc-usb-uart cmake-args: -DCONFIG_ZMK_STUDIO=yДалее, по соображениям безопасности, нам нужно выбрать какую-то клавишу (или комбинацию), которая сможет активировать так называемый «ZMK Studio Unlock Behavior»:
Я решил поставить её на самый нижний слой, где у меня переключения Bluetooth, настройка громкости и яркости.
Эту кнопку надо будет нажимать тогда, когда ZMK Studio потребует, как на скрине выше.
Все, дальше просто как обычно ждем, пока прошивка пересоберется, и перепрошиваем клавиатуру.
После этого можем перейти на сам сайт ZMK Studio или скачать и поставить на комп приложение.
А минусы будут?
ZMK Studio на момент написания статьи не поддерживает довольно много фич:
-
Нельзя менять конфигурацию энкодеров — это надо будет делать по старинке через keymap
-
Многие клавиши отображаются пустыми, хотя на них есть назначенное поведение. Так, у меня есть кастомная клавиша, чтобы включать двойным нажатием Caps Lock, а простым нажатием — Shift. ZMK Studio не знает, как это показать, поэтому просто при наведении показывает NEW_CAPS, а на превью — ничего. Эта же участь постигла и клавиши для эмуляции мыши и многие другие.
-
Нельзя добавлять новые слои — это тоже делается через обновление keymap
-
Нельзя добавлять новые поведения
-
И еще куча всего
Но пусть это Вас не останавливает! Уже большая часть нудной и мудреной рутины убрана!
По итогу
Мне очень нравится, что такие проекты, как ZMK, получают все больше и больше поддержки со стороны сообщества и что ими все проще и удобнее пользоваться!
Я бы, может, и дальше продолжал настраивать клаву исключительно через файлики, но впервые её будет юзать (я, по крайней мере, надеюсь) кто-то кроме меня, и очень классно, что можно просто через GUI все настроить!
Берегите себя и своих близких!
Сноски
-
По первости я смотрел на это и не понимал, ведь надо же страдать, ставить кучу зависимостей, которые будут неактуальны к моменту, когда в очередной раз надо будет пересобирать прошивку… Но со временем мне просто безумно зашел подход ZMK, ведь надо просто всего один раз помучиться с тем, как настроить клаву, а дальше все зависимости становятся проблемой GitHub Actions. Ну не гении ли! ↩
-
Ну мы же типа шарим, если лень, то просто делаем в этой же ветке. Кто я такой, чтобы говорить Вам, как жить эту жизнь? ↩

