КракозябрыВ Wine при запуске старых или неподдерживающих Unicode программ, зачастую, русский текст отображается в совершенно нечитаемом виде. Так и случилось при запуске детской обучающей программы "Отличник". Обычно я такие кривые программы сразу удаляю, но, так как программка мне нужна была, чтобы погонять немного ребенка по математике, то пришлось разобраться в вопросе.

 

 

 

Wine и старые программы с русскими шрифтами

Программа бесплатная, достаточно удобная и настраиваемая. К сожалению она написана под малораспространненную ОС Windows. Можем убедиться в отсутствии необходимой локали:

$ localedef --list-archive

ru_RU.utf8

Создадим локаль для таких приложений с кодировкой CP1251:

$ sudo localedef -i ru_RU -f CP1251 ru_RU.cp1251
$ localedef --list-archive

ru_RU.cp1251
ru_RU.utf8

Здесь после -i из какой локали будем компилировать, после -f таблица для перекодирования и в конце название нашей новой локали. Теперь её можно использовать например так:

$ LANG="ru_RU.cp1251" wine Otlichnyk.exe

Или вставить следующую строку в свойствах ярлыка

env LANG="ru_RU.cp1251" wine Otlichnyk.exe

Теперь все выглядит нормально:

Wine и нормальные русские буквы

Скачать программу "Отличник" можно здесь.

Update-2013-12-26: Недавно пришлось использовать еще более странную программу: Навигатор Павлодара (выпуск Зима 2013/2014). Если бы не упоминание года, то я бы подумал, что она написана в суровых 90-ых годах. Мало того, что она загружает процессор на 100%, тормозит, перегружена рекламой, так еще и использует досовскую кодировку IBM866 в программе и CP1251 в инсталляторе. К сожалению, найти еще где-либо маршруты общественного транспорта Павлодара мне не удалось. Чтобы использовать такие программы, просто замените в предыдущих командах CP1251 на IBM866.

Добавить комментарий
  • Комментарии не найдены