При запуске Far в wineconsole не вводятся русские буквы, приэтом элементы интерфейса Far и текстовый файлы,написанный на русском отображаются правильно (и в 8 битной и в Юникодной консоли). Возможно это связано с тем, что при вводе символов far ждет char символ, а не Wchar.
Проблема скорее всего в неправильной работе VkKeyScan. А на основе её генерируется таблица vkkeyscan_table. С помощью её заполняется поле ir[numEvent].Event.KeyEvent.wVirtualKeyCode и ir[numEvent].Event.KeyEvent.wVirtualScanCode, Если не использовать эту таблицу и принудительно заполнять первое поле числом 207 (найдено эмперически), то русские и английские символы работают, но с глюками!=(
Проблема в функции SHORT X11DRV_VkKeyScanEx(WCHAR wChar, HKL hkl), которая вызывается из VkKeyScan. Вся беда в том,что для русских символов (и вообще для Wchar) X функция XStringToKeysym возвращает неверный результат (0) и из- за этого присваивается неверный скан код!=( Задача: Найти функцию,которая бы получала правильный KeySym для Wchar.
Стоит посмотреть xutf8.cxx. Там есть обратная функция. Результаты которых добились: функция X11DRV_VkKeyScanEx возращает один и тот же Keycode. что для русской я, что и для английской z, что вообщем-то и требовалось. Но теперь в Far,вместо ожидаемых результатов, русские буквы выводятся пробелами в uxterm-е. и в обычном терминале.
Created attachment 78 [details] патч
Created attachment 79 [details] патч
Created attachment 80 [details] исправляет багу Реализует функцию ucs2keysym.
Добиль того чтобы русские символы отображались в Far как в 8-битной,так и в uxterm. работаю корректно хот кеи и все сис.клавиши. esc тоже работает,но с задержкой(ничего не поменялось). Т.к. добились русских букв в far багу закрываю. !Патчи не прошли пока утверждение в wineHq!
Created attachment 79 [details] патч Доделан Виталием. Теперь мы проверяем какая библиотека есть на машине: ncureses или ncursesw и в зависимости от этого либо получаем кириллицу в uxterm-е или нет.
Необходимые патчи приложены в W@E 1.0.5