English printf string hard to translate

Bug #641480 reported by Milan Bouchet-Valat
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Unity
Fix Released
Low
Mikkel Kamstrup Erlandsen
unity-lens-applications
Fix Released
Low
Mikkel Kamstrup Erlandsen
unity-lens-files
Fix Released
Low
Mikkel Kamstrup Erlandsen
unity (Ubuntu)
Fix Released
Undecided
Unassigned
unity-place-applications (Ubuntu)
Fix Released
Undecided
Unassigned
unity-place-files (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

../src/daemon.vala:892:
TRANSLATORS: The %s is plural. Eg. "games"
"There are no %s installed on this computer"

Thanks for the comments to translators, but basic programming rules[1] say you shouldn't assume all languages use the same syntax as English. Instead of filling the sentence with the applications category, you should use as many full sentences as there are categories. That doesn't create more noise since you need the same numlber of strings (even if they are longer).

In French for example, "of" becomes "de" when next word starts with a consonant, and "d'" when it starts with a vowel. So we can't really translate this, and have to change the string to something like "%s: no apps installed". I let you imagine what non-Occidental languages might need!

1: http://www.gnu.org/prep/standards/standards.html#Internationalization

Revision history for this message
Milan Bouchet-Valat (nalimilan) wrote :

BTW, same issue in unity-place-files:
Located in ../src/daemon.vala:1097
"There are no %s in your Home folder"

Revision history for this message
Milan Bouchet-Valat (nalimilan) wrote :

And
Located in ../src/daemon.vala:830
"There are no $section_name installed on this computer"

Revision history for this message
Alex Launi (alexlauni) wrote :

This is no bug here. These are just english strings that have no influence on the translation. If you are confusing %s with a pluralization rule, you are mistaken. %s is a placeholder for a string to be substituted in. The note is to tell you to format the string as you would in your language where a plural noun will be subject.

Changed in unity:
status: New → Invalid
Changed in unity-place-applications:
status: New → Invalid
Changed in unity-place-applications (Ubuntu):
status: New → Invalid
Revision history for this message
Milan Bouchet-Valat (nalimilan) wrote :

You don't understand the problem here. It has nothing to do with plural forms. Consider the following French translations:
- There are no games installed on this computer. -> Il n'y a aucun jeu installé sur cet ordinateur.
- There are no graphical applications installed on this computer. -> Il n'y a aucune application graphique installée sur cet ordinateur.

Now, in French %s would be replaced, respectively, with "jeu" and "application graphique", but notice other parts of the sentence also change in accordance to the gender of the nouns.

Not all languages are as simple as English WRT syntax, and many languages are even more complex than French in that regard. So please add one full translatable sentence for each category, instead of blindly filling %s placeholders. This is what I referred to as the "basic programming rules" from GNU. (And I'm disappointed Unity devs needed 5 months to even consider this simple but serious bug, just to close it.)

Changed in unity:
status: Invalid → Confirmed
Changed in unity-place-applications:
status: Invalid → Confirmed
Changed in unity-place-applications (Ubuntu):
status: Invalid → Confirmed
Changed in unity-place-files:
assignee: nobody → Mikkel Kamstrup Erlandsen (kamstrup)
importance: Undecided → Low
milestone: none → 0.5.40
status: New → Triaged
Changed in unity-place-applications:
assignee: nobody → Mikkel Kamstrup Erlandsen (kamstrup)
importance: Undecided → Low
milestone: none → 0.2.36
status: Confirmed → Triaged
Changed in unity:
assignee: nobody → Mikkel Kamstrup Erlandsen (kamstrup)
importance: Undecided → Low
milestone: none → 3.6
status: Confirmed → Triaged
Changed in unity-place-applications (Ubuntu):
status: Confirmed → Triaged
Changed in unity-place-files (Ubuntu):
status: New → Triaged
Changed in unity:
milestone: 3.6 → 3.6.2
Changed in unity-place-applications:
status: Triaged → Fix Committed
Changed in unity-place-files:
status: Triaged → Fix Committed
Changed in unity:
status: Triaged → Fix Committed
Changed in unity-place-applications (Ubuntu):
status: Triaged → Fix Committed
Changed in unity-place-files (Ubuntu):
status: Triaged → Fix Committed
Changed in unity-place-applications:
status: Fix Committed → Fix Released
Changed in unity-place-files:
status: Fix Committed → Fix Released
Changed in unity:
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-place-applications - 0.2.36-0ubuntu1

---------------
unity-place-applications (0.2.36-0ubuntu1) natty; urgency=low

  * New upstream release.
    - Unintuative Application Matching (LP: #726711)
    - dash search does not find names with '-' (d-feet, e-mail) (LP: #729025)
    - not installed apps sorting in global search (LP: #636996)
    - Speed up searches for Installed apps (LP: #730048)
    - English printf string hard to translate (LP: #641480)
    - Disk Usage Analyzer missing from applications place (LP: #660984)
  * debian/control:
    - bump dee and libunity req. to latest and greatest
 -- Didier Roche <email address hidden> Mon, 07 Mar 2011 19:07:41 +0100

Changed in unity-place-applications (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-place-files - 0.5.40-0ubuntu1

---------------
unity-place-files (0.5.40-0ubuntu1) natty; urgency=low

  * New upstream release.
    - dash search does not find names with '-' (d-feet, e-mail) (LP: #729025)
    - English printf string hard to translate (LP: #641480)
  * debian/control:
    - bump libunity and dee dep
 -- Didier Roche <email address hidden> Mon, 07 Mar 2011 19:07:53 +0100

Changed in unity-place-files (Ubuntu):
status: Fix Committed → Fix Released
Changed in unity (Ubuntu):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.