Печатаем по-русски на HP Jornada 680
2026/09/04
Есть у меня HP Jornada 680. Это великолепный маленький компьютер с ути-пути клавиатурой, портативным офисом и диктофоном, и я бы с огромным удовольствием печатал на нем всякие мелкие заметки или вел журнал, но есть один нюанс, который сильно все усложняет. Железка локализована для рынков Северной Европы: на клавиатуре стоят шведско-финнско-норвежско-датские буквы, а в ROM'е с операционкой (да-да, Windows CE тут находится в неперезаписываемой памяти!) есть только метод ввода для этих языков. Поэтому просто поменять раскладку в настройках или просто добавить язык не получится: Microsoft на момент выхода Windows CE v2.11 такого еще не придумала, а локализация систем проводилась путем костылизации и пересборки под разные рынки.
Почему нордическая раскладка это вообще проблема?
Если вы думали, что знаки препинания в разных местах на американской раскладке и русском ЙЦУКЕН'е — это ад, подержите мое пиво.
Тут сломано процентов 90% всей пунктуации, а часть постоянно используемых символов, типа того же @ или $, вообще вводятся через трехкнопочные комбо из Shift + AltGr + что-то еще.
Просыпаясь утром каждый день, возносите хвалу всем богам, что вам не приходится жить с этим:

За четыре года я так и не осилил этого монстра, поэтому на своем ноуте с линуксом использую специальную раскладку Swedish (US) — она совпадает с обычной американской, а мои родные å, ö и ä вводятся через правый Alt aka AltGr.
Так вот, без привычной эмэрикэнской раскладки я в принципе не смогу печатать на этом ути-пути палмтопе быстрее, чем три слова в минуту, поэтому хотелось бы при наборе по-английски иметь все буквы и символы в привычных местах.
А раз вы читаете этот текст на русском, то очевидно, что и по-русски было бы круто хоть как-то печатать тоже.
К счастью, поддержка Unicode и кириллицы в шрифтах в этой операционке уже есть, нужно лишь решить проблему ввода.
Когда я только начал тыкаться во все это, решил первым делом чинить печать на английском и сделал это достаточно быстро: утилита WR-Tools Hotkeys позволяет перенастроить определенные клавиши на ввод конкретных символов. Рабочий конфиг выглядит как-то так:


Тут можно заметить, что клавиши отправляют свои нормальные сканкоды: å — это LEFT BRACKET, а -, расположенный у северян справа снизу, — это SLASH, но на уровне системы они подменяются на соответствующие символы.
Проблема печати по-русски решается уже не так тривиально. Во-первых, нужен ввод непосредственно кириллицы. Во-вторых, нужно переключение между языками, причем и в том, и в другом буквы должны соответствовать американской и русской раскладкам. В период популярности наладонников в РФ некоторые компании пытались своими силами решить задачу локализации. Так, у компании АртСофт был платный ArtSKey, у великих Paragon все такой же платный Language Extender (LEng), а компания МакЦентр выпускала бесплатный RussKey. Все они делали одно и то же: добавляли ввод кириллицы и индикатор языка ввода в трее:


Эти софтины очень сложно сейчас найти и еще сложнее запустить, потому что ключей активации в открытом доступе попросту нет.
ArtSKey я пробовал в демо-режиме, а LEng даже не смог установить, потому что Paragon требует ввода лицензии уже в инсталлере.
Полноценно завелся только RussKey, но даже в нем все работает через жопу.
Во-первых, он никак не трогает оригинальную, нерусскую раскладку — видимо, предполагается, что программа будет запущена на КПК, импортированном из США.
Сочетание WR-Tools Hotkeys и RussKey не чинит проблему: переназначенные клавиши игнорируют язык ввода, при нажатии å на русском вводится [, а не х.
Видимо, Hotkeys обладает большим приоритетом, чем RussKey и применяет свою логику уже поверх метода ввода.
Во-вторых, даже при выключенном WR-Tools Hotkeys ввод русских букв работает не так, как ожидалось, полагаю, из-за вмешательства на уровне ОС.
Кнопка между 0 и = упорно вводит + на любом языке, вместо -.
Перепробовав все, до чего я только смог дотянуться, не вижу другого решения моей проблемы, кроме как сесть и самому написать текстовый редактор, в котором вопрос переключения языков будет решен внутри программы. Сейчас поставил на закачку Microsoft Embedded Tools, буду вспоминать как писать на Visual Basic и привыкать к ограничениям платформы с 16 мегабайт оперативной памяти.
Попутно решил сделать доброе дело и начать заливать на archive.org копии софта под Windows CE, которого там не было: