Укажите отработанное время

Отработанное время:
Продуктивное время:
Bug 389 - В Far не вводятся русские буквы.   Make a simular bug
Summary: В Far не вводятся русские буквы.
Status: CLOSED FIXED
Alias: None
Product: WINE@Etersoft
Classification: Продукты (Products)
Component: Общее (show other bugs)
Version: unspecified
Hardware: PC Linux
: P5 normal
Target Milestone: ---
Assignee: Vitaly Lipatov
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 297
Blocks: 412
  Show dependency treegraph
 
In work:
Reported: 2006-11-15 15:53 MSK by Анатолий Лютин
Modified: 2007-01-20 19:22 MSK (History)
0 users

See Also:
Заявки RT:
Связано с:
Дата напоминания:


Attachments
патч (8.21 KB, patch)
2010-11-18 03:58 MSK, Анатолий Лютин
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Анатолий Лютин 2006-11-15 15:53:23 MSK
При запуске Far  в wineconsole не вводятся русские буквы, приэтом элементы интерфейса Far и текстовый файлы,написанный на русском отображаются правильно (и в 8 битной и в Юникодной консоли). Возможно это связано с тем, что при  вводе символов far ждет char символ, а не Wchar.
Comment 1 Анатолий Лютин 2006-11-15 17:46:57 MSK
Проблема скорее всего в неправильной работе VkKeyScan. А на основе её генерируется таблица vkkeyscan_table. С помощью её заполняется поле ir[numEvent].Event.KeyEvent.wVirtualKeyCode и ir[numEvent].Event.KeyEvent.wVirtualScanCode, Если не использовать эту таблицу и принудительно заполнять первое поле числом 207 (найдено эмперически), то русские и английские символы работают, но с глюками!=(
Comment 2 Анатолий Лютин 2006-11-17 17:38:39 MSK
Проблема в функции SHORT X11DRV_VkKeyScanEx(WCHAR wChar, HKL hkl), которая вызывается из VkKeyScan. Вся беда в том,что для русских символов (и вообще для Wchar) X функция XStringToKeysym возвращает неверный результат (0) и из- за этого присваивается неверный скан код!=(
Задача: Найти функцию,которая бы получала правильный KeySym для Wchar.
Comment 3 Анатолий Лютин 2006-11-22 12:10:12 MSK
Стоит посмотреть xutf8.cxx. Там есть обратная функция.

Результаты которых добились:
функция X11DRV_VkKeyScanEx возращает один и тот же Keycode. что для русской я, что и для английской z, что вообщем-то и требовалось. Но теперь в Far,вместо ожидаемых результатов, русские буквы выводятся пробелами в uxterm-е. и в обычном терминале.
Comment 4 Анатолий Лютин 2006-11-24 17:37:12 MSK
Created attachment 78 [details]
патч
Comment 5 Анатолий Лютин 2006-11-24 17:38:04 MSK
Created attachment 79 [details]
патч
Comment 6 Анатолий Лютин 2006-11-24 17:39:17 MSK
Created attachment 80 [details]
исправляет багу

Реализует функцию ucs2keysym.
Comment 7 Анатолий Лютин 2006-11-24 17:42:39 MSK
Добиль того чтобы русские символы отображались в Far как в 8-битной,так и в uxterm. работаю корректно хот кеи и все сис.клавиши. esc тоже работает,но с задержкой(ничего не поменялось). Т.к. добились русских букв в far багу закрываю.
!Патчи не прошли пока утверждение в wineHq! 
Comment 8 Анатолий Лютин 2006-12-15 12:22:34 MSK
Created attachment 79 [details]
патч

Доделан Виталием.
Теперь мы проверяем какая библиотека есть на машине: ncureses или ncursesw и в зависимости от этого либо получаем кириллицу в uxterm-е или нет.
Comment 9 Vitaly Lipatov 2007-01-20 19:22:11 MSK
Необходимые патчи приложены в W@E 1.0.5