Универсальная раскладка — пакет комбинированной русской и английской раскладки для Windows, Linux и macOS. Раскладка спроектирована для повышенного удобства ввода различных символов. Присутствует также версия для ортолинейных и сплит-клавиатур.
- Universal Layout
Мне очень понравилась идея универсальной раскладки Никиты Прокопова, в особенности логичное использование клавиш точки для двоеточия, а запятой для точки с запятой.
В итоге мной была разработана своя версия английской и русской раскладок, в которых «одинаковые» символы расположены на отдельных клавишах.
Также большим плюсом для меня является лёгкий способ вводить кавычки « и », а также ворох специальных символов на слое AltGr.
Стандартная русская раскладка проектировалась по остаточному принципу, исходя из условия, что латинскую менять нельзя. Это привело к тому, что в русской раскладке пунктуация (запятая, точка, двоеточие, точка с запятой, кавычка, вопрос) расположены в других местах, нежели в английской. А кое-что в русской раскладке и вовсе нельзя набрать, например, одинарную кавычку.
— Nikita Prokopov (@tonsky)
Подробнее почитать о проблемах стандартных раскладок можно здесь:
- Вся пунктуация стоит на одних и тех же местах как для русского, так и для английского языка
- Есть несколько клавиш, которые собрали в себя все похожие символы, которые раньше были разбросаны по клавиатуре: '"`, /|\, -_— и =+≠±
- [ ] { } и ' теперь можно ввести и на русской раскладке
- Раскладка объединяет в себе русскую и английскую раскладки, которые переключаются по клавише Caps Lock. Правда, для Windows есть Standard версия от moigagoo с раздельными раскладками, если Caps Lock для вас непривычен.
- На месте цифр расположены символы, и наоборот, на месте символов — цифры. К примеру, 7 = Shift + ?
- В стандартной версии буквы Б и Ю поменяли своё расположение. В версии для ортолинейных клавиатур изменений ещё больше, подробнее о них написано ниже
- Ъ Ё ₽ € вынесены на слой с модификатором Alt.
Для ортолинейных клавиатур буквы русского и английского алфавита помещены в сетку 2×15. Для этого пришлось пожертвовать тремя буквами русского алфавита, которые не уместились в сетку. Однако, они расположены весьма логично и запоминаются мнемонически:
Ё = Alt + Е 
Ъ = Alt + Ь 
Щ = Alt + Ш 
Также, эта раскладка используется в 36-клавишной раскладке Wellum
- Если вы используете RDP или VNC, то раскладка в них работать не будет. Если очень хочется, можно поставить её и на удалённые машины, но это опция зачастую недоступна.
- Некоторые приложения Windows принудительно добавляют дефолтную раскладку, которая была установлена по-умолчанию в системе. При этом, раскладка не отображается в списке доступных для языка. Чтобы это исправить, надо вручную добавить дефолтную раскладку и удалить.
- Есть проблемы в работе AltGr на Linux. Их можно исправить, но в каждом конкретном случае нужно будет разбираться отдельно. К сожалению, любой софт не идеален. Например, Linux не поддерживает ввод лигатур (Alt + K = =>).
Не смотря на все эти баги, я пользуюсь этой раскладкой более 5 лет и удобство от её использования перевешивает все описанные проблемы. Единственная система, где раскладка работает идеально — macOS.
В папке layouts репозитория есть две версии (Standard и Ortho) для Windows, Linux и macOS.
Для Windows также есть Standard версия от moigagoo с двумя различными раскладками для RU (
UniRU) и EN (UniEN) локали соответственно. Она может понадобиться вам, если вы хотите переключать язык стандартным способом, а не через Caps Lock. Также, это позволит видеть какая именно раскладка сейчас активна.
- Запустить setup.exeнужной версии и дождаться установки.
- Установить раскладку в настройках системы: Настройки>Время и язык>Язык и регион>Английский (США)>Меню три точки>Языковые параметры>Добавить раскладку
- (Опционально) Удалить из списка стандартную раскладку для английского языка. В случае, если система установлена на английском языке, то можно целиком удалить русский язык на предыдущем экране.
- (Опционально) Установить раскладку в качестве стандартной для Экрана входа Windows в меню Административные языковые параметры>Копировать параметры.
- Перезагрузить систему — лишним не будет.
Люблю линукс за то, что можно всё настраивать. Правда тебе приходится всё настраивать.
- 
Для NixOS: положить universal (или universal_ortho) рядом с конфигом (или указать путь в symbolsFile до него). Пример: {...}: { services.xserver = { layout = "universal"; extraLayouts = { universal = { description = "Universal Layout"; languages = ["eng"]; symbolsFile = ./universal; }; }; }; } 
- 
Для остальных: поместить содержимое папки layouts/Linux/xkbв~/.config/xkb.
- 
Далее, способ установки зависит от окружения рабочего стола (Desktop Environment): - GNOME: В списке языков добавить Russian и English. В Gnome Tweaks в настройках клавиатуры включить опцию Universal Layout. Но это может работать криво: на Wayland может появляться ещё одна группа с дефолтной английской раскладкой.
- i3wm, herbstluftwm и другие WM на X Window System: добавить в автозапуск следующие команды:
xkbcomp $HOME/.config/xkb/symbols/universal $DISPLAY 2>&1 
- Для sway, hyprland и других WM на Wayland: ищите инструкцию в документации своего оконного менеджера.
 
- Файл layouts/macOS/Universal.bundleскопировать в~/Library/Keyboard Layouts.
- Перезагрузиться и перезайти в систему.
- Выбрать желаемую раскладку в Настройки системы > Клавиатура > Источники ввода. Она будет в разделе с Русской раскладкой.
- (Опционально) Удалить стандартные раскладки русского и английского языка.
Для этого в файле
~/Library/Preferences/com.apple.HIToolbox.plistудалить XML ноды, соответствующие стандартным раскладкам.
Для изменения или создания раскладок под Windows понадобится программа Microsoft Keyboard Layout Creator.
EXE'шник установщика есть и в репозитории в папке
layouts/Windows/software/msklc.exe.
Программа древняя и давно не обновлялась Microsoft, поэтому для его работы нужен .NET Framework 2.0.
С помощью неё можно открыть и редактировать файлы формата .klc, а также создать пакет для установки раскладки (Project > Build DLL and Setup Package).
Важно! Поле
NameвProject > Propertiesдолжно быть уникальным для системы и содержать не более 8 символов!
Для изменения или создания раскладок под Linux я не находил GUI-приложений. Файлы раскладок никак не компилируются, поэтому для их редактирования вам понадобится любой текстовый редактор.
О том как пользоваться XKB можно почитать на ArchWiki.
Для изменения или создания раскладок под macOS понадобится программа Ukelele.
С помощью неё можно открыть файлы формата .bundle, установить раскладку напрямую в систему или экспортировать в файл.
Никите Прокопову @nikitonsky за оригинальную идею и ресурсы. Репозиторий оригинальной Universal Layout на GitHub.
Дмитрию Ковалёву @devpew за хорошие видео о кастомных механических и раздельных эргономичных клавиатурах.
Русскоязычному сообществу эргономичных раскладок и клавиатур @klavaorgwork за помощь и обратную связь.






