Здравствуйте! Пробую писать на Ada (gnat-3.15) с использованием библиотеки GtkAda. Все вроде было хорошо пока я не попытался сделать надписи на кнопках по русски. Например - Gtk_New (Button, "Кнопка 1") В результате текст не выводится, а в консоле пишет про pango и плохой UTF-8: (trigon:94716): Pango-WARNING **: Invalid UTF-8 string passed to pango_layout_set_text() Как включить русский? PS. В системе почти все у меня русифицировано и прекрасно работает FreeBSD-5.4, Xorg-6.8.2, gnat-3.15p-3, Gtk-2.6.8, GtkAda-2.4.0 -- С уважением, Алексей Ю. Уласевич (A.STAKANOV) http://www.livejournal.com/users/a_stakanov/
Aleksey Ulasevich wrote: > Здравствуйте! > Пробую писать на Ada (gnat-3.15) с использованием библиотеки GtkAda. > Все вроде было хорошо пока я не попытался сделать надписи на кнопках по > русски. > > Например - Gtk_New (Button, "Кнопка 1") > > В результате текст не выводится, а в консоле пишет про pango и плохой UTF-8: > (trigon:94716): Pango-WARNING **: Invalid UTF-8 string passed to > pango_layout_set_text() > > Как включить русский? > Вопросы: 1. Какая кодировка используется в локализации (значение переменных окружения LANG, LC_ALL)? 2. В какой кодировке сохраняются файлы исходных текстов? (Ответ должен быть UTF8 ;) ) Если это не так (равно если и так) то рекомендуется использовать только английские буквы в именах, а для локализации фактически выводимого текста использовать GNU GetText или файл ресурсов. Правда как это сделать в Gtk я не знаю. -- Vadim Godunko
Vadim Godunko п©п╦я┬п╣я┌: Aleksey Ulasevich wrote: ... п²п╟п©я─п╦п╪п╣я─ - Gtk_New (Button, "п п╫п╬п©п╨п╟ 1") п▓ я─п╣п╥я┐п╩я▄я┌п╟я┌п╣ я┌п╣п╨я│я┌ п╫п╣ п╡я▀п╡п╬п╢п╦я┌я│я▐, п╟ п╡ п╨п╬п╫я│п╬п╩п╣ п©п╦я┬п╣я┌ п©я─п╬ pango п╦ п©п╩п╬я┘п╬п╧ UTF-8: (trigon:94716): Pango-WARNING **: Invalid UTF-8 string passed to pango_layout_set_text() п п╟п╨ п╡п╨п╩я▌я┤п╦я┌я▄ я─я┐я│я│п╨п╦п╧? п▓п╬п©я─п╬я│я▀: 1. п п╟п╨п╟я▐ п╨п╬п╢п╦я─п╬п╡п╨п╟ п╦я│п©п╬п╩я▄п╥я┐п╣я┌я│я▐ п╡ п╩п╬п╨п╟п╩п╦п╥п╟я├п╦п╦ (п╥п╫п╟я┤п╣п╫п╦п╣ п©п╣я─п╣п╪п╣п╫п╫я▀я┘ п╬п╨я─я┐п╤п╣п╫п╦я▐ LANG, LC_ALL)? ru_RU.KOI8-R 2. п▓ п╨п╟п╨п╬п╧ п╨п╬п╢п╦я─п╬п╡п╨п╣ я│п╬я┘я─п╟п╫я▐я▌я┌я│я▐ я└п╟п╧п╩я▀ п╦я│я┘п╬п╢п╫я▀я┘ я┌п╣п╨я│я┌п╬п╡? koi8-r ) (п·я┌п╡п╣я┌ п╢п╬п╩п╤п╣п╫ п╠я▀я┌я▄ UTF8 ;) ) п∙я│п╩п╦ я█я┌п╬ п╫п╣ я┌п╟п╨ (я─п╟п╡п╫п╬ п╣я│п╩п╦ п╦ я┌п╟п╨) я┌п╬ я─п╣п╨п╬п╪п╣п╫п╢я┐п╣я┌я│я▐ п╦я│п©п╬п╩я▄п╥п╬п╡п╟я┌я▄ я┌п╬п╩я▄п╨п╬ п╟п╫пЁп╩п╦п╧я│п╨п╦п╣ п╠я┐п╨п╡я▀ п╡ п╦п╪п╣п╫п╟я┘, п╟ п╢п╩я▐ п╩п╬п╨п╟п╩п╦п╥п╟я├п╦п╦ я└п╟п╨я┌п╦я┤п╣я│п╨п╦ п╡я▀п╡п╬п╢п╦п╪п╬пЁп╬ я┌п╣п╨я│я┌п╟ п╦я│п©п╬п╩я▄п╥п╬п╡п╟я┌я▄ GNU GetText п╦п╩п╦ я└п╟п╧п╩ я─п╣я│я┐я─я│п╬п╡. п÷я─п╟п╡п╢п╟ п╨п╟п╨ я█я┌п╬ я│п╢п╣п╩п╟я┌я▄ п╡ Gtk я▐ п╫п╣ п╥п╫п╟я▌. п■п╟ п╩п╟п╢п╫п╬ ) п²п╣ п╪п╬п╤п╣я┌ п╠я▀я┌я▄. пё п╪п╣п╫я▐ я┌я┐я┌ Mozilla, AbiWord, GIMP п╦ я┌п©. п▓я│п╣ п©я─п╣п╨я─п╟я│п╫п╬ пЁп╬п╡п╬я─я▐я┌ п©п╬ я─я┐я│я│п╨п╦, п╟ п╪п╬п╦ п©я─п╬пЁя─п╟п╪п╪я▀ п╫п╣ п╪п╬пЁя┐я┌. п╒п╟п╨ п╫п╣ п╠я▀п╡п╟п╣я┌.б═ -- п║ я┐п╡п╟п╤п╣п╫п╦п╣п╪, п░п╩п╣п╨я│п╣п╧ п╝. пёп╩п╟я│п╣п╡п╦я┤ (A.STAKANOV) http://www.livejournal.com/users/a_stakanov/
Aleksey Ulasevich wrote: >> > Да ладно ) Не может быть. У меня тут Mozilla, AbiWord, GIMP и тп. Все > прекрасно говорят по русски, а мои программы не могут. > Так не бывает. > Поскольку они внутри используют только англицкий, а потом используют средства gettext и ресурсов для подстановки строк, то у них всё и работает. Попробуй конвертнуть исходный файл в UTF-8 и откомпилировать: iconv --from-code=koi8r --to-code=utf8 -o out.ada in.ada gnatmake -gnatW8 out.ada ;) -- Vadim Godunko
Vadim Godunko п©п╦я┬п╣я┌: Aleksey Ulasevich wrote: п■п╟ п╩п╟п╢п╫п╬ ) п²п╣ п╪п╬п╤п╣я┌ п╠я▀я┌я▄. пё п╪п╣п╫я▐ я┌я┐я┌ Mozilla, AbiWord, GIMP п╦ я┌п©. п▓я│п╣ п©я─п╣п╨я─п╟я│п╫п╬ пЁп╬п╡п╬я─я▐я┌ п©п╬ я─я┐я│я│п╨п╦, п╟ п╪п╬п╦ п©я─п╬пЁя─п╟п╪п╪я▀ п╫п╣ п╪п╬пЁя┐я┌. п╒п╟п╨ п╫п╣ п╠я▀п╡п╟п╣я┌. п÷п╬я│п╨п╬п╩я▄п╨я┐ п╬п╫п╦ п╡п╫я┐я┌я─п╦ п╦я│п©п╬п╩я▄п╥я┐я▌я┌ я┌п╬п╩я▄п╨п╬ п╟п╫пЁп╩п╦я├п╨п╦п╧, п╟ п©п╬я┌п╬п╪ п╦я│п©п╬п╩я▄п╥я┐я▌я┌ я│я─п╣п╢я│я┌п╡п╟ gettext п╦ я─п╣я│я┐я─я│п╬п╡ п╢п╩я▐ п©п╬п╢я│я┌п╟п╫п╬п╡п╨п╦ я│я┌я─п╬п╨, я┌п╬ я┐ п╫п╦я┘ п╡я│я▒ п╦ я─п╟п╠п╬я┌п╟п╣я┌. п÷п╬п©я─п╬п╠я┐п╧ п╨п╬п╫п╡п╣я─я┌п╫я┐я┌я▄ п╦я│я┘п╬п╢п╫я▀п╧ я└п╟п╧п╩ п╡ UTF-8 п╦ п╬я┌п╨п╬п╪п©п╦п╩п╦я─п╬п╡п╟я┌я▄: я█я┌п╬ я─п╟п╠п╬я┌п╟п╣я┌ ) -- п║ я┐п╡п╟п╤п╣п╫п╦п╣п╪, п░п╩п╣п╨я│п╣п╧ п╝. пёп╩п╟я│п╣п╡п╦я┤ (A.STAKANOV) http://www.livejournal.com/users/a_stakanov/
Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти