Универсальная раскладка
Меня всегда раздражало, что знаки препинания на русской и английской клавиатурах расположены в разных местах. Но настоящий ад начался, когда я переехал в Германию и начал пользоваться немецкой раскладкой.
Если на английской и русской раскладках различия хотя бы ограничиваются знаками препинания, то немецкая — это отдельная история. Тут не только точка и запятая прячутся куда-то подальше, но и привычные клавиши вдруг оказываются в неожиданных местах. При этом я умею печатать вслепую, но этого недостаточно — запомнить местоположение всех знаков препинания в трёх раскладках оказалось невозможной задачей.
Часто замечаю, что не помню, где находится нужный символ в русской раскладке — и специально переключаюсь на английскую или немецкую, чтобы его набрать. Это прерывает поток мысли, замедляет набор текста и вызывает раздражение. Особенно бесят умляуты на немецкой клавиатуре — они оккупировали те клавиши, где в английской раскладке были нужные знаки. А если символ прячется под левым Alt, приходится выкручивать кисть в стиле ручной Камасутры, чтобы нажать сразу две неудобные клавиши.
Но теперь, когда я научился настраивать кастомную клавиатуру при помощи ZMK, стало интересно — справится ли он с этой задачей? ZMK — это прошивка для кастомных клавиатур на базе операционной системы реального времени Zephyr. И использовать его просто как посредника между кнопкой и символом — значит бездарно тратить его потенциал. Хочется задействовать всю его мощь, чтобы создать действительно умную раскладку, которая адаптируется под мои реальные задачи и привычки.
Недавно у меня появилась возможность настроить клавиатуру полностью под себя. И тут пришла идея: а можно ли сделать так, чтобы все знаки препинания были на одних и тех же клавишах — вне зависимости от того, включена русская, немецкая или английская раскладка?
Оказалось, можно! И работает это потрясающе удобно.
Русскую раскладку почти не пришлось трогать — в ней мало специфических символов. В немецкой я убрал умляуты с основных клавиш и перенёс их под правый Alt, а на их места вернул знаки препинания, совпадающие с английской раскладкой.
Теперь я буквально влюблён в свою раскладку. Набирать текст стало в разы проще и приятнее. Осталось довести проект до ума, собрать обе половинки клавиатуры — и носить её с собой. Потому что печатать на чужих клавиатурах после этого просто невозможно.
Ложные друзья переводчика
В русском языке есть множество фальшивых немецких слов — такие слова звучат как немецкие, но немцы их не используют, например, «парикмахер» или «шлагбаум». Сегодня в мастерской узнал, что штангенциркуль по-немецки совсем не штангенциркуль!
Название заимствовано из старонемецкого языка и почти точно копирует оригинальное «Stangenzirkel», но в современном языке это слово отсутствует. По-немецки штангенциркуль называется «Messschieber» или «Schieblehre» — соответственно, «раздвижной измеритель» или «раздвижная линейка».
Кстати, по-английски штангенциркуль будет calipers — видимо, слово родственно слову «калибр».
Новости клавиатуростроения
Подключение клавиатуры к микроконтроллеру оказалось не проблемой. Оказалось, что шилды Arduino Pro Micro и Nice!nano совместимы по выводам, поэтому можно использовать те же ноги, что и в инструкциях для Pro Micro. Чтобы залить прошивку, достаточно подключить Nice!nano к компьютеру проводом USB Type-C и дважды закоротить вывод reset с землёй на плате — после этого плата автоматически определяется как флешка, на которую нужно скопировать файл с прошивкой.
Сегодня я наконец разобрался, какие клавиши за что отвечают и как можно переключать слои. Столбцы на левой половине клавиатуры оказались в порядке, а столбцы на правой пришлось угадывать методом научного тыка. Выяснилось, что Aurora Sofle, прошивку которой я взял за основу, переключает слои с помощью клавиш, которые я просто не припаял. Чтобы не перепаивать устройство, я решил немного модифицировать прошивку. Благодаря тому, что сборка прошивки настроена через CI/CD GitHub'а, с этим почти не возникло проблем. Пока что я не придумал, как лучше организовать переключение языков: мне нравилось использовать для этого CapsLock, но на этой клавиатуре его по определению нет. Временно можно использовать Alt-Control, как и раньше, но, думаю, сделать отдельную клавишу для переключения не будет проблемой — нужно будет только решить, какую именно и где её разместить...
Пока устройство выглядит довольно брутально — с проводами и контроллерами снаружи. Заказал необходимые детали на AliExpress. Как приедут, запрячу всё внутрь, и будет почти идеально.
Ты не один
Почему-то сегодня в голове играет эта песня. Пусть она будет сегодня и тут тоже...