Проблема с созданием файлов перевода для составного проекта
Добрый день уважаемые Гуру программирования на Qt.
Столкнулся вчера вот с такой проблемой. Есть проект с файлом проекта .pro. В состав данного проекта добавлены проекты с файлами проектов .pri. У основного проекта и подпроекта есть свои файлы переводов. Раньше, когда проект был составной и каждый подпроект имел свой .pro файл, то с созданием файлов перевода не было проблем. Теперь, создается общий файл, который содержит перевод и основного проекта и одного из подпроектов (.pri) и там нет того, что я уже перевел.
Как быть в таком случае? Можно ли обойтись меньшей "кровью" или придется переопределять скомпилированный файл перевода в файлах ресурсов и переводить все заново?
Заранее благодарен за ответ!
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.Do you like it? Share on social networks!
- Akiv Doros
- Nov. 12, 2024, 1:58 a.m.
C ++ - Test 004. Pointers, Arrays and Loops
- Result:50points,
- Rating points-4
- molni99
- Oct. 26, 2024, 11:37 a.m.
C ++ - Test 004. Pointers, Arrays and Loops
- Result:80points,
- Rating points4
- molni99
- Oct. 26, 2024, 11:29 a.m.
C ++ - Test 004. Pointers, Arrays and Loops
- Result:20points,
- Rating points-10
Добрый день. Боюсь, что придётся переводить заново.
Я у себя в компании переписывал QtLinguist для внутренних нужд и пришёл к выыводу, что lupdate, который используется для создания ts файлов, при генерации файлов часто удаляет информацию, которую не может связать с какими-то перемещениями или новыми файлами переводов.
Думаю, что вы можете попытаться сохранить несколько файлов переводов, вместо одного, как у вас было реньше сделано. Поскольку pri - это часть pro проекта, хоть и не самостоятельный проект, но там также можно объявлять файлы переводов.
И ещё другая возможность. Написать парсер, на python например, который составит словарь переводов из старых файлов, а потом заменит все отсутствующие переводы в новых файлах перевода. Это должно быть быстрее, чем делать всё это вручную.
Евгений, добрый день.
Спасибо за ответ. Но по поводу Python не совсем понял. Там же нужно еще и компилировать эти файлы переводов. Или Вы имеете ввиду динамический перевод?
Я имею ввиду, если у вас был старые ts файлы, то написать парсер, который составил бы словарь переводов.
Например.
"Hello world" - "Привет мир"
"Hello dev" - "Привет dev"
и т.д.
А потом сделать новые ts файлы и добавить переводы, которые совпадают на 100%.
ts файлы - это обычные xml файлы. Так что там можно спарсить всё. В принципе можете использовать любой удобный вам язык программирования.
А потом уже компилируете qm файлы. Когда всё замените.