Russian Qt Forum
Ноябрь 23, 2024, 07:37 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Интернационализация, gettext, .po файлы, qt4.5  (Прочитано 9313 раз)
Jkc
Гость
« : Июль 14, 2009, 14:29 »

Нужно сделать перевод интерфейса для программы с помощью gettext и .ро файлов, вот сижу разбираю доки
http://www.gnu.org/software/gettext/
http://www.gnu.org/software/gettext/manual/gettext.html
но текста а много а времени мало  Злой
Может кто-то может скинуть готовый пример, или коротко объяснить как всё это дело сделать по быстрому.
Заранее спасибо.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #1 : Июль 14, 2009, 15:45 »

у тебя po-файлы есть или тебе их создать надо?

Если надо создать читай тут на русском: http://ru.opensuse.org/OpenSUSE_Localization_Work_with_PO_Files


П.С. А почему не с помощью Лингвиста?
« Последнее редактирование: Июль 14, 2009, 15:47 от lit-uriy » Записан

Юра.
Jkc
Гость
« Ответ #2 : Июль 14, 2009, 16:40 »

у тебя po-файлы есть или тебе их создать надо?

Если надо создать читай тут на русском: http://ru.opensuse.org/OpenSUSE_Localization_Work_with_PO_Files


П.С. А почему не с помощью Лингвиста?
po файлов нет, всё нужно создавать, то что там написано я уже понял, интересует сам процес, как в qt запихнуть подгрузку этих po файлов и т.п.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #3 : Июль 14, 2009, 19:28 »

А зачем тебе в Qt эта байда?
Почему переводишь не штатными средствами Qt (QObject::tr(), lupdate, Qt Linguist, lrelease)?
« Последнее редактирование: Июль 14, 2009, 19:37 от lit-uriy » Записан

Юра.
Jkc
Гость
« Ответ #4 : Июль 14, 2009, 19:51 »

А зачем тебе в Qt эта байда?
Почему переводишь не штатными средствами Qt (QObject::tr(), lupdate, Qt Linguist, lrelease)?
лично мне оно и не нужно, причуды заказчика Улыбающийся
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #5 : Июль 14, 2009, 20:22 »

Причём здесь причуды заказчика?
Qt-приложения не локализуются с помощью po/mo-файлов. В Qt свой механизм.

П.С. Интересно посмотреть как ты mo-файлы будешь загружать в Qt-приложение Улыбающийся
Записан

Юра.
Rcus
Гость
« Ответ #6 : Июль 14, 2009, 20:26 »

Честно сказать не знаю в чем профит, но он точно есть Улыбающийся иначе KDE не стала бы использовать gettext (под слоем в виде kdelibs/kdecore/localization/**/*.*)
Записан
Jkc
Гость
« Ответ #7 : Июль 22, 2009, 16:34 »

Так  что народ, не кто не в курсе как это сделать?
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #8 : Июль 22, 2009, 16:54 »

неа, и не только здесь не в курсе. Т.к. зачем людям зарабатывать себе геморой мозга.
Записан

Юра.
Wicked_Digger
Гость
« Ответ #9 : Июль 23, 2009, 14:50 »

Как работать с po файлами, Вы разобрались, насколько я понял.

Далее...

msg2qm перегоняет po файлы в qm бинарый формат, они грузятся как обычно,
через QTranslator::load().

msg2qm должна входить в пакет gettext.
Записан
uriel
Гость
« Ответ #10 : Июль 23, 2009, 15:13 »

Начиная с 4.5, вроде, с Qt идёт родная утилитка lconvert как раз для этих целей.
Записан
Wicked_Digger
Гость
« Ответ #11 : Июль 23, 2009, 16:25 »

Я так понял, что заказчик просил локализацию основаную на gettext
инструментарии.
Видимо в перспективе предполагается перевод без участия разработчика,
а тянуть в таком случае qt тулы действительно не резон.
Да и лишнее звено в процессе (конвертация) увеличивает вероятность
ошибок.
Я не пробовал конвертировать po файлы, но linguist некоторые po файлы
импортирует неверно, что-то мне подсказывает, что алгоритм у них один...
Записан
Jkc
Гость
« Ответ #12 : Июль 24, 2009, 16:20 »

Я так понял, что заказчик просил локализацию основаную на gettext
инструментарии.
Видимо в перспективе предполагается перевод без участия разработчика,
а тянуть в таком случае qt тулы действительно не резон.
Да и лишнее звено в процессе (конвертация) увеличивает вероятность
ошибок.
Я не пробовал конвертировать po файлы, но linguist некоторые po файлы
импортирует неверно, что-то мне подсказывает, что алгоритм у них один...
Да именно так всё и есть , linguist может создать, читать po файлы и сгенерить
qm , но этот qm мне не нужнет, нужно что бы превод брался из po файла
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.052 секунд. Запросов: 23.