Table of Contents

RusHack - русификатор для Treo 650, TT3, TT5, TX, TE2, LifeDrive, Treo 680, Treo Centro

Последняя релизная версия

26.02.06 релиз http://www.palmoid.com/RusHack_0_5_953.zip

некоторые пользователи TE2 считают, что 581 билд лучше подходит для их машинок:

19.01.06 http://www.palmoid.com/rushack_0_5_581.zip

Бета

23.04.08 http://www.palmoid.com/RusHack_0_5_1788.prc

19.02.08 http://www.palmoid.com/RusHack_0_5_1787.prc

01.08.07 http://www.palmoid.com/RusHack_0_5_1683.prc

13.06.07 http://www.palmoid.com/RusHack_0_5_1663.prc

26.12.06 http://www.palmoid.com/RusHack_0_5_1642.prc

26.12.06 http://www.palmoid.com/RusHack_0_5_1459.zip

25.04.06 http://www.palmoid.com/RusHack_0_5_1353.zip что-то вроде релиз-кандидата.

15.04.06 http://www.palmoid.com/RusHack_0_5_1331.zip

27.03.06 http://www.palmoid.com/RusHack_0_5_1299.zip

Как работает поддержка PalmSGHiResFonts? Остальные русификаторы предлагают простейшую руссификацию, собственную копию этой базы с русскими шрифтами. Понятно, что это удобно для работы в кодировке windows-1251, но недостаточно для чтения почты и сайтов в KOI-8R. Для обхождения этого ограничения текущая версия русхака предлагает собственный способ. Вместо одной базы PalmSGHiResFonts используются базы для каждой кодировки. К текущей версии прилагаются две базы: PalmSGHiResFonts38.pdb ( windows-1251 ) и PalmSGHiResFonts40.pdb ( koi-8r ). Русхак будет брать шрифты в зависимости от текущей кодировки, выставленной модулем. Если русхак не находит базы для текущей кодировки, то будет использована база PalmSGHiResFonts.pdb. Логика понятна или описать поподробнее?

Замечание. Понятно, что можно было просто положить PalmSGHiResFonts.pdb и PalmSGHiResFonts40.pdb. Тогда по умолчанию шрифты бы брались из основной базы, а для кои - из дополнительной. Такая комбинация баз будет работать, но если до их инсталляции PalmSGHiResFonts.pdb из ROM уже использовалась, то осоновные шрифты будут браться только из нее до ресета. Предлагаемый способ начинает работать сразу после инсталляции

26.02.06 http://www.palmoid.com/RusHack_0_5_995.prc

26.02.06 http://www.palmoid.com/RusHack_0_5_953.zip

19.01.06 http://www.palmoid.com/rushack_0_5_581.zip

19.01.06 http://www.palmoid.com/rushack_0_5_579.prc

12.01.06 http://www.palmoid.com/rushack_0_5_562.zip

11.01.06 http://www.palmoid.com/rushack_0_5_550.zip

21.12.05 http://www.palmoid.com/rushack_0_4_482.zip

14.12.05 http://www.palmoid.com/rushack_0_4_399.prc

13.12.05 http://www.palmoid.com/rushack_0_4_394.zip

22.11.05 http://www.palmoid.com/rushack_0_3_263.zip

16.11.05 http://www.palmoid.com/rushack_0_3_239.zip

2.11.05 бета 0.2.190 http://www.palmoid.com/rushack_0_2_190.zip

1.11.05 бета 0.2.184 http://www.palmoid.com/rushack_0_2_184.zip

28.10.05 бета 0.2.89 http://www.palmoid.com/rushack_0_2_89.zip

27.10.05 Вторая публичная бета 0.2.60 http://www.palmoid.com/rushack_0_2_60.zip

25.10.05 Первая публичная версия: 0.2.10

Господа! Автор принципиально не отвечает на вопросы, рассмотренные в документации. Уважайте чужой труд, читайте документацию!

Введение

RusHack - это руссификатор для устройств Treo 650/680/755, Tungsten T3, Tungsten T5 и Tungsten TX, Tungsten E2, LifeDrive, Tapwave Zodiac, Zire 72.

RusHack - идеологический наследник CyrHack, он основан на тех же принципах и использует компоненты кирхаковских плагинов.

Другой предок RusHack - хак-менеджер YAHM и его технологии по аккуратному перехвату сисколлов. RusHack использует YAHMLib engine для перехвата сисколлов. Это позволяет ему пользоваться всеми преимуществами YAHM не требуя его наличия на устройстве.

Зачем нужен еще один русификатор? Основная причина: желание пользоваться русификатором с предсказуемым и документированным поведением. Все особенности RusHack описаны в настоящей документации.

Что русифицирует RusHack?

Что не русифицирует (и не будет) RusHack?

Несмотря на грозные предупреждения, RusHack обычно работает правильно.

Дополнительные возможности RusHack

Установка и удаление

Установка

Если у вас не установлен другой руссификатор - пункт “1” можно пропустить.

  1. Отключить другой русификатор. Перезагрузитесь после выключения. Учтите что выключенность русификатора не гарантирует того, что он не сидит глубоко в недрах PalmOS. Повторяю: недостаточно просто выключить русификатор. Его нужно удалить или перенести на карту. Даже если кажется что все работает и так.
  2. Закачать RusHack с модулями из архива на устройство. Обратите внимание, что модули разнесены на два подкаталога. В каталоге Treo лежат модули для Treo 650, а модули для остальных устройств лежат в каталоге Tungsten.
  3. Перейти к пункту “Настройка”.

Модули

В комплект RusHackа входит несколько модулей. Предназначение модуля можно понять из его имени. Есть две основные группы модулей: модули для Treo 650 и модули для машинок с областью граффити. Первые модуле содержат поддержку аппаратной клавиатуры Treo 650, вторые модули содержат поддержку граффити.

В имя модуля входят следующие определяющие признаки: описание начертания ( thick - толстый, thin - тонкий и.т.д.), кодировка (1251 - стандартная русская, koi8 - юниксовая русская кодировка, применяется в основном для писем), тип поддерживаемой библиотеки граффити (g1 - Graffiti 1, g2 - Graffiti 2), раскладка клавиатуры на Treo 650 ( jcyk - ЙЦУКЕНГ, модули для трео без типа раскладки поддерживают ЯВЕРТЫ как самую практичную для этой клавиатуры).

Достаточно поставить один модуль, прочие модули могут быть полезны для приписывания их к конкретным программам.

Удаление

  1. Деактивировать (disable) RusHack.
  2. Удалить.

Обновление

  1. Деактивировать (disable) RusHack.
  2. Удалить.
  3. Закачать новую версию.

Осторожно! В некоторых бета версиях была ошибка, приводившая к невозможности удалить или обновить модули. Для решения проблемы скачайте новую версию и перезагрузите устройство.

Поскольку RusHack защищает себя и активизированный модуль от удаления, то обновления при активном RusHack'е не произойдет.

Настройка

Status: Disable - выключен (не вмешивается в работу системы), Enable - включен.

Plugins: список установленных плагинов. При первой настройке (сразу после установки) необходимо выбрать один из плагинов. Повторяю: для русификации недостаточно включить русификатор, нужно выбрать плагин.

About: выдать информацию об активном модуле.

Delete: удалить активный модуль.

Reset options: activate after reset - автоматически включать после перезагрузки, language - язык по умолчанию после перезагрузки.

Click on layout change : переключение раскладки или модуля сопровождается кликом.

Extra SlovoEd support : расширенная имитация Piloc API. простая имитация была достаточна

Опцию нужно включать для словарей языков, в которых коды букв пересекаются, например, для русско-немецкого словаря. в этом случае загрузкой-выгрузкой модулей управляет словоед. нижний список слов всегда рисуется стандартным шрифтом, так что показ немецко-русского словаря сопровождается выгрузкой текущего модуля, что влечет за собой потерю правильной перекодировки из/в юникод(а). Хуже того, как мне показалось, для работы немецко-русского словаря нужно держать активной правильный порядок сортировки аксантов, иначе словарь может зациклиться при поиске (но это не точно).

Пункт меню "Treo opts..."

В пункте меню “Treo opts…” находятся специфичные для Treo 650 опции.

Опции “Left shift”, “Right shift”, “Option” и “Menu” позволяют определить действие, выполняемое по долгому (1сек) нажатию на соответствующую клавищу. Возможные действия:

Использование

Индикатор режима

Интерфейс PalmOS поддерживает индикатор режима граффити ( Graffiti State Indicator - GSI ). RusHack использует GSI для индикации текущего языка. Если индикатор показывает Ru, то осуществляется ввод русских букв. Индикатор En говорит о вводе латинских букв. Также индикатор показывает регистр вводимой буквы: ru - ввод маленьких букв, RU - ввод больших букв (caps lock), Ru - ввод большой буквы с последующим переключением в маленькие ( используется в начале предложений).

Одиночное нажатие стилом на индикаторе переключает раскладку. Двойное нажатие вызывает список модулей с возможностью изменить текущий модуль. В появившемся окне можно выбрать другой модуль или None для временного восстановления латинских символов.

Если в текущей форме отсутствует GSI, то его можно увидеть вызовом диалога поиска. Также можно воспользоваться альтернативными способами смены раскладки: воспользоваться росчерком граффити или комбинацией клавиш на трео.

Управление с клавиатуры Treo 650

Ввод русских букв с клавиатуры происходит после переключения в русский режим (см. дальше). Поскольку клавиш меньше, чем русских букв, то отсутствующие буквы вводятся через клавишу Alt после нажатия базовой буквы. Так, буква “ю” вводится как “у” и Alt с выбором из появившегося списка. Стандартная поставка включает две русские раскладки: ЯВЕРТЫ или ЙЦУКЕНГ. Фонетическая раскладка ЯВЕРТЫ предпочтительнее, поскольку упрощает поиск букв на клавиатуре. Даже если ваше устройство имеет наклейки с русскими буквами, пользоваться ими не очень удобно из-за размеров букв и полной нечитаемости наклеек в сумерках.

Переключение языков ввода (ru-en): Opt+Space или удерживание правого Shift на 1 секунду. Клавиши Opt и Space можно нажимать как одновременно, так и последовательно.

Переключение модуля на лету: удерживание левого Shift на 1 секунду. В появившемся окне можно выбрать другой модуль или None для временного восстановления латинских символов.

Вызов command bar: удерживание Opt на одну секунду.

Все удерживающие действия могут быть повешены на любые клавиши смены регистра в настройках программы.

Выбор непечатной (отсутствующей на клавиатуре) буквы в приложении “Контакты” осуществляется циклическим нажатием Alt. Для поиска фамилии “Ющенко” (две непечатные буквы подряд) нужно сделать паузу между нажатиями Alt на 0.8 сек.

Вызов пункта меню осуществляется последовательным или одновременным нажатием клавиш Menu и буквы, привязанной к пункту меню. Привязанная к меню буква всегда латинская, независимо от текущей раскладки.

Граффити

На бесклавиатурных устройствах (TT5, TX итд) RusHack позволяет вводить русские буквы с помощью граффити. Русские буквы не распознаются, вместо этого используются росчерки для похожих латинских букв.

Существуют две версии библиотеки граффити: G1 и G2. Каждая библиотека использует собственные росчерки. Новые устройства поставляются с G2. Для некоторых машин (TT5, TX, LD) можно скачать версию G1 с http://yahm.palmoid.com/G14OS54.zip .

Росчерки для G2 аналогичны обновленным росчеркам программы Piloc:

Росчерки для G1 аналогичны росчеркам программы CyrHack:

Привязка модулей к приложениям

В RusHack имеется возможность привязать модуль к приложению так, что при запуске приложения будет автоматически загружаться указанный модуль. Для привязки следует войти в приложение, выбрать требуемый модуль и, вызвав еще раз список модулей, выбрать пункт “Set App Default”.

Переключение модулей подчиняется простым правилам. Для их понимания следует помнить два термина: текущий модуль ( это модуль, который сейчас выбран) и модуль по умолчанию ( это модуль, который сохранен в настройках). Вот правила переключения модулей.

  1. Если при запуске программы оказывается, что у нее есть привязанный модуль, то этот модуль становится текущим модулем.
  2. Если при запуске программы оказывается, что у нее нет привязанного модуля, то модуль по умолчанию становится текущим модулем.
  3. Если пользователь переключается на новый текущий модуль вручную, то этот модуль становится новым модулем по умолчанию.

Поддержка VersaMail, Blazer, SnapperMail

Начиная с билда 1299, RusHack обеспечивает полную русскую поддержку программ, использующих PalmVMFontLibrary. К этим программам относятся Blazer, VersaMail и SnapperMail.

Если Вам лень читать дальше, то поставьте PalmSGHiResFonts.pdb и PalmSGHiResFonts40.pdb и перегрузитесь.

Начиная с TT3, PalmOne стала прошивать в ROM своих устройств (или копировать в RAM) библиотеку с дополнительными шрифтами. Эти шрифты используют две программы: стандартный почтовый клиент VersaMail и стандартный веб клиент Blazer. Почтовый клиент SnapperMail Также поддерживает эту библиотеку, в окне выбора шрифта есть кнопка “more fonts”, которая и позволяет выбрать шрифт из этой библиотеки. Понятно, что в прошитых шрифтах отсутствуют русские буквы.

Традиционный подход к переводу этих шрифтов состоит в копировании на устройство базы PalmSGHiResFonts.pdb (имя может различаться в зависимости от производителя русификатора), которое замещает одноименную базу из ROM. У этого способа есть два недостатка: если указанные программы уже запускались, то требуется перегрузить устройство для того, чтобы новая база была задействована. Второй недостаток серьезнее: такой способ не позволяет подставлять шрифт в другой кодировке, например, в koi-8r, для прочтения письма.

Версии RusHackа до 1299 использовали тот же самый способ. Новые версии позволяют менять кодировку дополнительных шрифтов на лету. Для этого в поставке существует две новые базы: PalmSGHiResFonts38.pdb и PalmSGHiResFonts40.pdb. Первая база содержит шрифты в кодировке windows-1251, а вторая - в кодировке koi-8r. Теперь, при переключении кодировки в VersaMail, дополнительные шрифты также будут автоматически переключаться.

Для продвинутых. Если у Вас уже стоит русская версия базы PalmSGHiResFonts.pdb, то можно ее оставить. Достаточно доставить базу PalmSGHiResFonts40.pdb для поддержки koi-8r, если она нужна. Оставлять одновременно и PalmSGHiResFonts.pdb и PalmSGHiResFonts38.pdb одновременно смысла нет, ибо они содержат одинаковые по начертанию шрифты, и происходит потеря лишних 160k.

Для тех, у кого исчезла опция выбора шрифта в Blazer. Скорее всего на вашей машинке оригинальная библиотека PalmSGHiResFonts стояла в RAM, а не в ROM и вы ее удалили. Для восстановления опции следует поставить PalmSGHiResFonts.pdb.

Перечислим возможные варианты инсталляции:

Программы, в которых поддерживаются дополнительные шрифты

Как было сказано выше, некоторые программы содержат в себе нестандартные шрифты. До Воспользуйтесь другой разработкой автора: FAQ: Мелкие русские шрифты - патчер. Версии, начиная с 190 билда позволяют замену шрифтов в отдельных программах, так что можно не использовать вышеуказанный патчер.

Вот список поддерживаемых программ:

Почтовые клиенты

На сегодняшний день не существует полноценной почтовой программы для PalmOS, которая бы полностью поддерживала бы русский язык.

SnapperMail

SnapperMail на сегодняшний день лучше всех поддерживает работу с email на русском языке. В сочетании с RusHack SnapperMail позволяет читать и отвечать на письма и в windows-1251 и в koi-8r. Достаточно переключить кодировку для чтения и перед созданием нового сообщения или ответа. Кодировка исходящего письма проставляется в процессе отправления, так что следует не забывать либо отсылать сразу же после написания, либо выставлять правильную кодировку перед отложенной отсылкой. Отослать сообщения в разных кодировках не получится.

Кодировку сообщения SnapperMail определяет по кодам отдельных букв, так что в письмах, где русские буквы отсутствуют будет проставлена кодировка ISO-8859-1.

Большой минус SnapperMail - неумение читать письма в UTF-8.

VersaMail

В сочетании с RusHack VersaMail позволяет читать письма и в windows-1251 и в koi-8r. В то же время во всех создаваемых письмах VersaMail принципиально проставляет ISO-8859-1.

К плюсам можно отнести умение читать письма с русскими буквами в UTF-8.

Documents To Go

В дистрибутиве в каталоге Doc2Go можно найти дополнительную библиотеку шрифтов для комплекта программ Documents2Go: Word2Go и Sheet2Go. Проинсталлируйте базу WordToGoRusHackFonts.pdb на устройство. После этого дополнительные шрифты в указанных программах будут локализованы.

Если вы перенесли пакет Doc2Go на карту с помощью утилиты Dataviz Tech, то перед инсталляцией русских шрифтов следует временно перенести пакет в память устройства. Это связано с тем, что на карте может остаться нелокализованная версия базы шрифтов, которая может конфликтовать с базой в памяти.

Если после инсталляции русских шрифтов при запуске Doc2Go Вы увидите предупреждение о несовпадении версий программ пакета, то следует воспользоваться опцией “Fix Doc2Go” из меню программы RusHack. Эта опция запускает мастера, который пытается исправить ситуацию с русскими шрифтами для Doc2Go. Просто выберите опцию из меню и следуйте инструкциям.

С некоторыми версиями RusHackа была выложена битая база шрифтов. Для исправления ошибки просто залейте на устройство базу из последней версии дистрибутива.

В состав пакета Doc2Go входит еще два шрифтовых модуля: SlideshowFonts (DvzSSFonts.pdb) и DTTFonts. Первый ( SlideshowFonts) стоит просто удалить с устройства. Если первый модуль скорее всего будет когда-нибудь переведен, то у второго шансов на перевод мало, так как он содержит шрифты в довольно таки редком формате TTF collection.

дополнительные модули

неофициальные модули: http://www.geocities.com/scudb/rushack/

Создание собственных модулей

Господа! Создание пальмовых шрифтов из десктопных - это несложно. PalmFontConverter позволит это сделать. Желающие, пишите на support@palmoid.com .

В архиве http://www.palmoid.com/module_src.zip находятся исходники модулей. Запустите build.cmd для построения модулей.

Для создания своего модуля из существующих компонентов нужно сделать следующее.

скопировать похожий .rcp-файл в новый файл. Модифицируйте его содержимое.

// секция описания шрифтов
// стандартный
DATA "afnx" ID 32000 "afnx7d00.bin"
// жирный
DATA "afnx" ID 32001 "afnx7d01.bin"
// большой 
DATA "afnx" ID 32002 "afnx7d02.bin"
// большой жирный
DATA "afnx" ID 32003 "afnx7d03.bin"
// шрифты с буквоками en/ru для индикатора раскладки
DATA "afnx" ID 32004 "afnx7d04.bin"
DATA "afnx" ID 32005 "afnx7d05.bin"
 
// таблице менеджера интернационализации
DATA "attb" ID 5000 "attb1388.bin"
DATA "attb" ID 5005 "attb138d.bin"
DATA "attb" ID 5006 "attb138e.bin"
DATA "attb" ID 5007 "attb138f.bin"
DATA "attb" ID 5008 "attb1390.bin"
DATA "attb" ID 5009 "attb1391.bin"
DATA "attb" ID 5010 "attb1392.bin"
DATA "attb" ID 5011 "attb1393.bin"
DATA "attb" ID 5012 "attb1394.bin"
DATA "attb" ID 5013 "attb1395.bin"
DATA "attb" ID 5014 "attb1396.bin"
DATA "attb" ID 5015 "attb1397.bin"
 
// строка копирайта
STRING ID 1000 "Russian module for RusHack\nCodepage: Windows-1251\n(Palm OS 5 version)\n"
 
// имя модуля, как оно будет выглядеть в списке модулей
APPLICATIONICONNAME ID 1000 "Russian (1251)\x00"
 
// версия модуля
VERSION "1.03"
 
// таблица alt-списков 
DATA "HsPp" ID 25000 "HsPp61a8.bin"
// таблица перекодировки введенного с клавиатуры
DATA "HsPp" ID 25001 "HsPp61a9.bin"

модуль собирается следующей строкой:

pilrc -q -allowEditID  -ro -type plug -creator RuHa -name "Rus Times (1251)" "Rus Times (1251).rcp" Russian-5-1251-Times.prc

Отмаз

Как и всякая freeware ( не только) программа, RusHack ничего не обещает.

Известные баги и фичи программ

новой транзакции если встать клавиатурой на поле для ввода получателя (справа от Pay: , оно будет выделено голубой рамкой) и нажать на центральную кнопку, то попадаешь в поле, и там появляется знак “=” (его там быть не должно). То же с другими полями, содержимое которых можно выбрать в выпадающем списке (поле с черным треугольником), а вот с простыми текстовыми этого не наблюдается.

Поддержка

Душеспасительное чтение

Авторские права

Программа предназначена для свободного использования в личных целях. Для коммерческого использования, массовых инсталляций и помещения в сборники программ на магнитных и оптических носителях следует связаться с правообладателями для лицензирования.

Пожертвования

Ничто не стимулирует разработку так, как финансирование. Те, кто считают, что работа должна оплачиваться, могут поблагодарить автора через WebMoney, кошельки R030750432255 и Z294613731183.

Благодарности