LINUX.ORG.RU

GTK + Windows


0

0
Пишу программу с использованием GTK. Необходимо собрать ее копию и для винды. Все работает, собирается. Но есть одна проблема: приложения gtk2 воспринимают все строки в UTF-8. Все бы ничего, но параметры командной строки - тоже в UTF-8 (хотя реально в cp1251). Из-за этого, например, Glade не открывает файлы в директориях с русскими именами. А если и открывает, то не может сохранить (выдает ошибку). Как обойти такое?
★★★
Ответ на: комментарий от friday
Спасибо. Видимо, установка G_FILENAME_ENCODING=cp1251 должно спасти существующие приложения (glade).
Envel ★★★
() автор топика
Ответ на: комментарий от Envel
Проблемма не в GTK+, а в Glib... Все функции работы с файлами под виндой принимают данные в UTF8, под линуксом же в кодировке текущей локали... Вообще эта проблемма обсуждается в GLib reference. Скорее всего нужно использовать функции g_locale_to_utf8(или что-то в этом роде... с подробностями обратитесь к документации Glib) для конвертации данных в кодировке локали. В частонсти параметров argv.
v_gudkov
()
Ответ на: комментарий от v_gudkov
Из всего вышенаписанного понял, что glade заставить работать с кириллицей без пересборки не получится.
Envel ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.