Summary: | Fuzzy clock is wrong in multiple languages | ||
---|---|---|---|
Product: | [Unmaintained] kicker | Reporter: | Cyrille Dunant <cyrille.dunant> |
Component: | kclockapplet | Assignee: | Christian Gebauer <gebauer> |
Status: | RESOLVED UNMAINTAINED | ||
Severity: | normal | CC: | eira, finex, gaute, maris.kde, mrudolf |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
I forward this bug to Kicker, but it is for clockapplet developer. In french, in the 24 hours system, for a half past an hour (X h 30 min), we have two different cases : - when 0 <= hour <= 11, we say : "11h et demi" (for example) and - when 12 <= hour <= 23, we say : "12h trente" (for example) So these two cases have to be managed in the source code, to allow french team translating this. Thanks. I think the whole fuzzy clock code could use a rewrite - sadly enough, I'm just too dumb for C coding. I would suggest using a .conf file with the following array variables: - ANUMBERS, BNUMBERS, CNUMBERS for the various formats of the numbers 1-12 in the current language. - STEPS for the five-minute steps within an hour. A member of the STEPS variable could look like this: "Half past {a:hour}", where {a:hour} would be interpreted as the ANUMBERS member for the current hour, or "Quarter to {a:hour+1}", where {a:hour+1} would mean the ANUMBERS member for the next hour. This would work for all the languages I know (English, German, Czech, as a little gimmick also southern German). I'm afraid this French problem cannot be solved this way, but I still wanted to file this suggestion here for further discussion. *** Bug 42376 has been marked as a duplicate of this bug. *** *** Bug 126302 has been marked as a duplicate of this bug. *** Remember that there's a "hack" in clockapplet that allows %0 to be translated as %1, to indicate "hour+1". As far as I can recall, the "%0" is not an ordinary Qt argument, but instead parsed somewhere in clock.cpp. (I think numbers other than %1 can be used as well, but my languages never needed that.) These strings are marked "no-c-format", so that PO validation tools won't complain. For the record, "somewhere in clock.cpp" seems to be in FuzzyClock::drawContents(). This bug is still valid for KDE 4.1 fuzzy clock plasma applet. Fixing problem reported in Bug #42376, would also fix problems with fuzzy clock Latvian translation. Kicker is no more mantained and all bugs/wishes will not be fixed/implemented in KDE3. A list of the most interesting/unresolved issues which is still valid for KDE4 has been created. Before reopening old kicker bugs on KDE4 Plasma, please try the new KDE 4.3.1, check the current behaviour and, only if you find new bugs or if you need a particular feature, open a new bug report. Remember that KDE 4 is a full rewrite of KDE 3 so some old features will not be re-implemented because the behaviour has be changed a lot on some sides. Thanks for the comprehension and enjoy the new KDE 4! -- FiNeX & D. Andres |
Version: (using KDE Devel) Installed from: Compiled sources OS: Linux In french, one should not say "douze heures" but "midi" If, for code reasons one still wants to display "douze heures" is should then be "douze heure trente" and not "douze heure et demi" The lines I have modified are in kde-i18n/fr/messages/kdebase/clockapplet.po < msgstr "%0 et demi" --- > msgstr "%0 trente"