Qt Créateur – Qt Creator is also in French

Posted by Benjamin on November 24, 2009 · 11 comments

A few weeks ago, we had an awesome insane idea: to translate Qt Creator into French. It turned out to be a terrible idea, because it was much more work than what we originally thought.

We started to translate the strings and it didn’t take us long to realize how huge Creator really is, and the list of strings to translate seemed endless. We ended up asking for help in one of the French Qt communities, Qt.developpez.com. Their response was amazing, they worked like crazy on the translations, and thanks to them, the next version of Qt will provide a French version of the tools. From Qt 4.6.0 on, you will have a French version of Qt Designer and of Qt Assistant. Qt Creator 1.3.0 is available in French entirely, including the integrations and the less known plugins.

The translation of thousands of strings, by non-profesionnals, in only a few weeks, have been quite a challenge :) . Thanks to Jonathan Courtois, Alp Mestan, Florent Renault, Pierre Rossi for their amazing work on translations. Thanks to Yoann Lopes for the review of some of the tools.

Thanks to great efforts from the community, Qt Creator has translations for German, Spanish, Italian, Japanese, Polish, Russian, Slovenian and now French. Everybody is welcome to participate in those translations or to create a new translation via the GIT repository on gitorious. If you would like to help the French translation, you are welcome on the forums of developpez.net to meet the other translators.


Il y a quelques semaines, nous avons eu une idée géniale stupide : traduire tout Qt Creator en Français. Il s’est avéré que cette idée était ingérable, car cela représente bien plus de travail que ce que nous avions initialement imaginé.Après avoir commencé la traduction, nous avons rapidement réalisé à quel point Creator est immense, et la liste des chaînes à traduire semblait sans fin. Nous avons demandé de l’aide à l’une des communautés Qt francophone: Qt.developpez.com. Leur réponse a été incroyable, ils ont travaillé comme des fous sur les traductions, et grâce à eux, la prochaine version de Qt aura une version francophone des outils. À partir de Qt 4.6.0, une version française de Qt Designer et de Qt Assistant. Qt Creator sera disponible intégralement en Français, y compris les plugins dont personne n’a jamais entendu parler…La traduction de milliers de chaînes de charatères, par des amateurs, en quelques semaines, a été un véritable défi :) . Merci à Jonathan Courtois, Alp Mestan, Florent Renault et Pierre Rossi pour leur travail sur les traductions. Merci a Yoann Lopes pour la vérification des traductions des outils.

Grâce aux efforts de la communauté, Qt Creator est traduit en Allemand, Espagnol, Italien, Japonais, Polonais, Russe, Slovène, et maintenant Français. Tout le monde peut aider à ces traductions, ou créer de nouvelles traductions, via le dépôt GIT sur gitorious. Si vous désirez aider la traduction française, vous êtes les bienvenus sur les forums de developpez.net pour rencontrer les autres traducteurs.

QShare(this)

Possibly related posts:

  1. Qt Creator 2.0.1
  2. Updated release schedule for Qt 4.7, Qt Creator 2.0 (and Qt Creator 2.1)
  3. Qt Creator 2.1 Beta 2 Released
  4. Gerrit joined the Qt Creator project!

11 comments

1 Donald Carr November 24, 2009 at 7:16 pm
 

Good on you for stressing Qt’s i18n support and using it in a deployed tool, good on Qt.developpez.com for delivering the goods out of the kindness of their hearts.

2 Dan November 24, 2009 at 8:29 pm
 

Good language choice, there seems to me that beside English, French is the most used language to discuss Qt on the web.

Thanks for making tools that make i18n less of a pain in the butt.

3 Henrik Hartz November 24, 2009 at 9:29 pm
 

Community power at work!!!

4 divide November 24, 2009 at 9:30 pm
 

Wow, I was surprised when Qt Creator opened in french, but I didn’t knew french was the only language translated, I thought it was localized for every major language !
Still, there are a few items untranslated: all the “Build” menu is still in english, and at some place some commands are still in english (like “close project”/”start debugging”).

Good work though !

5 Philippe November 24, 2009 at 9:30 pm
 

I have divided by 3 (!?) my translation time by using google translate with the following Qt code (main excerpts). Would be easy to integrate to Linguist I guess…

void LinguistExtension::Init()
{
m_http = new QHttp(this);
connect(m_http, SIGNAL(done(bool)), this, SLOT(_TranslationDone(bool)));
}

void LinguistExtension::Translate(const QString& text, const QString& langTo) // langTo == “fr”, “es”, etc.
{
QString fromLang = “en”;

QString url = QString(“/translate_a/t?client=t&sl=” + fromLang + “&tl=” + langTo);

QHttpRequestHeader header = QHttpRequestHeader(“POST”, url, 1, 1);
header.setValue(“Host”, “www.google.com”);
header.setValue(“User-Agent”, “Mozilla/5.0″);
header.setValue(“Accept-Encoding”, “deflate”);
header.setContentLength(text.length());
header.setValue(“Connection”, “Close”);

// Text to be translated
QByteArray ba(“text=”);
ba.append(text.toUtf8());

m_http->setHost(“www.google.com”);
m_http->request(header, ba);
}

void LinguistExtension::_TranslationDone(bool error)
{
QString result0 = QString::fromUtf8(m_http->readAll());

QRegExp regex(“\\{\”trans\”:\”(.*)\”,\”orig\”:”, Qt::CaseSensitive, QRegExp::RegExp2);
regex.setMinimal(true);
int pos = 0;
QString result;
while ((pos = regex.indexIn(result0, pos)) != -1)
{
QString t = regex.cap(1);
result += t;
pos += regex.matchedLength();
}

if (result.startsWith(“\”"))
result = result.mid(1);
if (result.endsWith(“\”"))
result.truncate(result.length() – 1);

// Adjust a bit the google result
// (could be improved)
result.replace(” \\n “, “\n”); // Google often adds spaces around a \n
result.replace(“\\n “, “\n”);
result.replace(” \\n”, “\n”);
result.replace(“\\n”, “\n”);
// Replace attempts of smart quotes
result.replace(QString(QChar((unsigned short)0×2018)), “\”");
result.replace(QString(QChar((unsigned short)0×2019)), “\”");
result.replace(QString(QChar((unsigned short)0xAB)), “\”");
result.replace(QString(QChar((unsigned short)0xBB)), “\”");
result.replace(QString(QChar((unsigned short)0x300E)), “\”");
result.replace(QString(QChar((unsigned short)0x300F)), “\”");
result.replace(QString(QChar((unsigned short)0x201E)), “\”");
result.replace(QString(QChar((unsigned short)0x201C)), “\”");

result.replace(” \\u2029 “, “\n”);
result.replace(” \\u2029″, “\n”);
result.replace(“\\u2029 “, “\n”);
result.replace(“\\u2029″, “\n”);

result.replace(“\\u003c/ “, “”);
result.replace(“\\u003e”, “>”);

result.replace(” …”, “…”);
result.replace(“\\x3c”, “”);
result.replace(“\\\”", “\”");
result.replace(“

6 Jure Repinc November 24, 2009 at 9:55 pm
 

Slovaque is Slovakian, not Slovenian. The right French translation for Slovenian is Slovène. Anyways, I was translating Qt Creater 1.3 and also Qt 4.6 into Slovenian during this summer. Really a huge pile of strings to translate. Thankfully KDE Lokalize did a great job helping with its translation memory, filled with translations from KDE. Hope all developers from Slovenia like it and as many check it out and help imrove it further. I still have some bits like Assistant and Linguist to translate but I’ll try to find some time to finish it in the comming days.

7 Benjamin November 24, 2009 at 10:02 pm
 

Jure Repinc: oops, I have fixed the French translation of Slovenian. Thanks for reporting the mistake :)

8 Markus Goetz November 25, 2009 at 10:34 am
 

@Philippe: Small side not, QHttp is deprecated, use QNetworkAccessManager :)

9 Thorbjørn Lindeijer November 25, 2009 at 4:07 pm
 

@divide: As you can read in this post, French is not the only translation, but one of 8 languages in which Qt Creator is translated.

10 ryan November 26, 2009 at 10:06 am
 

merci beaucoup!

11 Lycus HackerEmo December 2, 2009 at 10:37 pm
 

How can I change the language to Qt Creator?

Comments on this entry are closed.

Previous post:

Next post: