Re: [SailfishDevel] translations and internationalisations

2015-03-20 Thread Matthias Fehring
Hey Stefan,

the ts file without language code extension is like a template file for 
further languages. That is the reason why it is not compiled into a qm file. 
It would only contain strings that already exist in your source code. So if 
you use qsTr with English as source language there is no need to translate 
this into english again.

English translations are needed if you want to have plural forms displayed 
correctly, but then there only the plurals have to be translated.

It would be different if you use qsTrId, because then there is no real source 
string inside the code. So in that case you would also need english 
translation files. But ts files without lang code would still be templates.

lupdate is, as you aspected, used for extracting translatable strings form the 
source code.

lrelease compiles ts text files into binary qm files that are used by 
QTranslator. [0]

If you want to have your app translated you need to install a translator as 
described in [0].

Best greetings
Buschmann

[0] http://doc.qt.io/qt-5/qtranslator.html

Am Freitag, 20. März 2015, 13:18:51 schrieb s...@bredband.net:
> Hi
> 
> I created a new project, myapp, wich contain the following
> "translations" files
> 
> harbour-myapp-de.ts
> 
>  About
> 
> 
> About
> 
> harbour-myapp.ts
> 
>  About
> 
>  About
> 
> About.qml pages looks like this
> 
> 
> Page {
> ..
> ..
> 
>  title: qsTr("About")
>  }
> 
> When I compile the
> project Qt have only "built" the de file, in
> ../build-harbour-myApp-MerSDK_SailfishOS_i486-Debug/translations/
> 
> 
> harbour-lapis-de.qm
> harbour-lapis-de.ts
> 
> Should it not have built
> the other one as well, that is harbour-myapp.ts ?
> 
> If I change the file
> harbour-myapp.ts (which i assume is the default one) into
> 
> 
> harbour-myapp.ts
> 
>  About
> 
>  About
>  HELLO THERE
> 
> Nothing happens on the
> screen, title: qsTr("About"), still writes "About" and not "HELLO THERE"
> as expected.
> 
> According to Qt homepage there are some tools, lupdate
> and lrelease mention but they are not installed in the Qt
> distribution
> and entering those at the command prompt gives error
> message.
> However lupdate/lrelease seems to be used for backward
> engineering text, lupdate extracts from the source code texts
> and
> create the .ts files, which is only useful when trying to
> internationalise an finished application.
> 
> Is not qsTr using it's
> argument to look up in the .ts (.qm) files what text it should use in
> runtime?
> 
> /Stefan

-- 
Das Gesetz hat zum Schneckengang verdorben, was Adlerflug geworden wäre.
(Friedrich Schiller - Die Räuber)

Und der Buschfunk spielt gerade "Generation Nokia" von "Pascow".

www.buschmann23.de
GPG-Key: 0x614C3258
GPG Fingerprint: B770 E0D0 69CF BFC1 5FE1 D78E 3A70 A936 614C 3258


signature.asc
Description: This is a digitally signed message part.
___
SailfishOS.org Devel mailing list
To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org

[SailfishDevel] translations and internationalisations

2015-03-20 Thread stol


Hi 

I created a new project, myapp, wich contain the following
"translations" files 

harbour-myapp-de.ts

 About


About

harbour-myapp.ts

 About

 About

About.qml pages looks like this


Page {
..
.. 

 title: qsTr("About")
 } 

When I compile the
project Qt have only "built" the de file, in
../build-harbour-myApp-MerSDK_SailfishOS_i486-Debug/translations/


harbour-lapis-de.qm 
harbour-lapis-de.ts 

Should it not have built
the other one as well, that is harbour-myapp.ts ? 

If I change the file
harbour-myapp.ts (which i assume is the default one) into


harbour-myapp.ts

 About

 About
 HELLO THERE

Nothing happens on the
screen, title: qsTr("About"), still writes "About" and not "HELLO THERE"
as expected. 

According to Qt homepage there are some tools, lupdate
and lrelease mention but they are not installed in the Qt
distribution
and entering those at the command prompt gives error
message.
However lupdate/lrelease seems to be used for backward
engineering text, lupdate extracts from the source code texts 
and
create the .ts files, which is only useful when trying to
internationalise an finished application. 

Is not qsTr using it's
argument to look up in the .ts (.qm) files what text it should use in
runtime? 

/Stefan 

 ___
SailfishOS.org Devel mailing list
To unsubscribe, please send a mail to devel-unsubscr...@lists.sailfishos.org