AboutQt not fully translatable?
-
The system dialog aboutQt is not "fully" translatable even with the dependent translator files being present. The title, About and the line below which mentions which version of Qt is used is translated. The lines following are in english. Is it required that the EULA for Qt which mentions the GNU LGPL and GNU GPL be always in english? If not what is required to get the whole of the aboutQt dialog translated in the local language?
I am using German for the localized form of our app. I determined that I needed additional translate files other than the one for the app as well as the expected additional one for the system (qt_de.qm):
MyExecutable_de.qm
qtbase_de.qm
qtmultimedia_de.qm
qtquick1_de.qm
qtscript_de.qm
qtxmlpatterns_de.qmEven with the additional files, the aboutQt dialog appears only partially translated.
Screenshot "here":https://onedrive.live.com/?cid=bfaf48d9b8a755aa&id=BFAF48D9B8A755AA!152&ithint=folder,.png&authkey=!AAN21Yoc7yVvbMg
-
Hi,
Do you mean that the text containing and following "Qt is a C++ toolkit for cross-platform application" is not translated ?
-
Since the code that displays that about box is in the Qt library, you could look at the Qt source code to see whether they use tr() around the text that you suggest is untranslated. If the code does not use tr(), then you cannot cause it to be translated. If the code does use tr(), then take note of the context in which it is translated, and look for a translation in the .ts files you list. If there is no translation in those files, you could provide a translation under the named context in your app's own .ts file. But that seems like overkill to me. What is the harm in displaying it in English?
-
The code uses tr
-
[quote author="SGaist" date="1404941527"]Hi,
Do you mean that the text containing and following "Qt is a C++ toolkit for cross-platform application" is not translated ?[/quote]
Precisely! Try it yourself. Every string I use is properly translated (using the tr macro) with the exceptions of what I outlined above. Bug?
-
[quote author="bootchk" date="1404989775"]Since the code that displays that about box is in the Qt library, you could look at the Qt source code to see whether they use tr() around the text that you suggest is untranslated. If the code does not use tr(), then you cannot cause it to be translated. If the code does use tr(), then take note of the context in which it is translated, and look for a translation in the .ts files you list. If there is no translation in those files, you could provide a translation under the named context in your app's own .ts file. But that seems like overkill to me. What is the harm in displaying it in English?[/quote]
It's called an accommodation. You deploy an application and would like the user to have all aspects in the language that their OS is using.
Quality is never overkill
-
Perfection is the enemy of good enough?
I have worse problems: nothing translates on older versions of OSX. (I just found some posts that suggest QLocale.name() is not accurate on OSX, something about a prioritized list of languages from QLocale.uiLanguages.)
So SGaist determined that tr() is used in Qt library. And I just looked on gitorious qt/qttranslations/translations/qtbase_de.ts and searched for "copyright"..... the source phrase appears in that file, and no one has bothered to translate it from English. Others agree with me that there are higher priorities?
But no higher priority than helping others and learning.
If you want to translate it, I still think you can do it by putting your translation in a translator ahead of the qtbase_de translator. But you must match the source string that Qt uses and the context 'QMessageBox'. I haven't tried such a thing and would be interested to know if that would work.
On the other hand, maybe lawyers in the Qt project don't WANT you to be translating legal terms.
-
[quote author="bootchk" date="1405004392"]Perfection is the enemy of good enough?
[/quote]Whatever. I'll let you have the last platitude.