I am currently working on an app which will be used in a several latin languages. Does anyone know any resources or best practices for label text usage in such apps?

Thank you

  • Can you elaborate? What kind of best practices are you looking for and what seems to be your exact problem? I can say that, in case you are working with a back-office, keep in mind that there are different character sets for different languages and changing them can create unwanted results. Or that Roman languages (French, Italian, etc) generally takes up more space than Germanium languages (English, German, etc). But I don't know if this is relevant in the slightest bit. – Ruudt Jun 4 '14 at 13:49
  • Thank you Ruudt, it is very relevant. I am looking for set of considerations, and examples where a sentence type of label - parameter can be still used in a multi-language system. e.g. "Since {1997}" will become "{1997} ' den beri" in Turkish. So French - English might work but Turkish and English have very different syntaxes and structures. That is why I said Latin languages (leaving Arabic, Japanese, Chinese, etc... out) – Esin Jun 4 '14 at 13:50

There are some of my thoughts regarding the issue. I have 15 years of experience working on translations (mostly open source) software into my native language.

It's already mentioned that translations might be much longer than english strings. It's so obvious, but it's so often overlooked. I can't count how many times I've seen "please translate the word 'edit' with max 4 chars" type of things. Don't overthink it of course, there is no point to count in cases where "edit" might take 50+ chars.

Sentences with parameters are often complicated, yes. These can be used of course, but it's important that you don't make any assumptions which structure is normal in language and which isn't.

  • At first don't ever create a word puzzles - always give translators whole sentences or structures. Take for example a sentence "Move files from %1 to %2". It's not OK to give translators strings "Move files from %1" and "to %2" and it's especially bad to give them strings "Move files from" and "to". The order of parameters might be different in translation etc. It might be that translation should be " %2 %1".

  • Avoid reusing parameters in different sentences. Take for example parameter which can be either "file" or "folder" in english. There is a temptation to reuse this list in different sentences, for example "Link to %1", "Merge with %1" and "Read from %1". The problem is that in some languages "file" and "folder" must be translated differently in these sentences - instead of prefixes used in english words change their form in these languages. Finnish is the worst case in this regard, but there are others as well. There is a funny, but very true illustration.

  • It's actually a good idea to minimise any reuse if context isn't the very same. There is often temptation to reuse short strings like "Edit" for example. But it might be a verb or noun depending on context and translation must be different depending on that. And of course verbs and nouns might need a different form depending on context as well.

  • Avoid using widgets as parameters. At first it's only possible with help from breaking sentences into puzzles - it's often impossible to translate. And even if it is, it might be ugly, break layouts badly and look bad because of additions translators have to add to widgets.

  • Learn about plurals problem and use the solution translation mechanism of UI you are using gives to you. In short the problem is that although in most of languages there is two forms of plurals - singular and plural ("1 file", "n files"), there are languages in which there are six forms of plurals. See Unicode plural rules to get an idea what the problem is, look at Welsh as worst case and get used to it that if there is a "%n things" type of construct you have to use the plurals solution provided to use even if there is no way that %n is 1.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.