[Comm] украинские буквы под wine

Alexej Kryukov =?iso-8859-1?q?akrioukov_=CE=C1_mail=2Eru?=
Ср Фев 4 20:22:03 MSK 2004


On Wednesday 04 February 2004 19:10, Alexey Morozov wrote:
> On Wed, Feb 04, 2004 at 10:45:10AM +0200, uaxman (ukrtop.com) wrote:
> > Кто-нибудь добился ввода украинских букв в программах запущенных
> > под wine?
> >
> > Помогите очень нужно чтобы работало. Поставил себе офис xp под
> > линухом а специфические украинские и немецкие буквы вводить не
> > могу.
>
> Ковыряться в потрохах вайн? Вообще, это место там [было] написано
> предельно криво.
>
> Можете попробовать взяться переписать это всё начисто, потому что
> эта кривизна [была] вызвана необходимостью эмуляции виндовых
> интерфейсов нижнего уровня (для игр, насколько мне было заявлено), а
> офисы и прочие "взрослые" приложения работают "индустриальными"
> методами, для которых сканкоды, в общем, не очень нужны (опять же,
> повторюсь, _были_, когда я обсуждал эту проблему с Дмитрием
> Тимошковым года три-четыре назад)

Значит так. Вот что там было на момент выхода последнего ALM:

-- в коде жестко прошит набор раскладок в виде строковых массивов;
-- при запуске текущая раскладка X11 сканируется на предмет соответствия
этим массивам. Причем сканируется как-то криво, по-моему, только
по последним байтам keysyms, что для кириллицы дает koi8.
-- тот массив, который будет сочтен максимально соответствующим,
используется в качестве раскладки в wine.

Украинская раскладка, кстати, в комплекте была, так что при наличии
такой же в X11 она должна была распознаваться (а может, и нет,
ибо для koi8-u сканирование по последним байтам keysyms дало
бы неправильный результат).

С Юникодом же тогда wine вообще толком не работал, так что никаких
немецких символов при русской/украинской локали бы и близко не
получилось.

Примерно с лета 2003 г. wine научился распознавать X11 keysyms
напрямую, после чего раскладки в виде символьных массивов потеряли
всякий смысл, однако продолжают висеть в исходниках, и связанный с
ними код продолжает отрабатывать, хотя фактически больше
никакой роли не играет. 

Кроме того, появилась возможность доступа к полному диапазону
Unicode, но зато клавиатура в юникодовых приложениях толком
работать перестала: вместо нее вводятся символы Latin-1 (т. е.
немецкий в word xp будет, а русский нет). Так в той версии, что
у меня -- возможно, с тех пор еще что-то поправили.

Мораль: чтобы вылечить проблему, нужно экспериментировать с более
новыми версиями. Возможно, одна из них случайно окажется
работающей ;-)





Подробная информация о списке рассылки community