GNOME Bugzilla – Bug 469361
Bad strings for i18n
Last modified: 2008-10-18 12:06:16 UTC
Please describe the problem: There is a very large number of strings marked for translation that contain large amounts of markup and large amounts of redundant text. This is likely to introduce many errors in translations, plus it takes very long time to translate. Example: #: ../src/metacity.schemas.in.h:110 msgid "" "The keybinding that switches to workspace 1. The format looks like \"<" "Control>a\" or \"<Shift><Alt>F1\". The parser is fairly " "liberal and allows lower or upper case, and also abbreviations such as \"<" "Ctl>\" and \"<Ctrl>\". If you set the option to the special string " "\"disabled\", then there will be no keybinding for this action." There are more than 60 of these strings! The first sentence varies, but the remaining sentences have to be translated over and over. Suggestion: Split the sentence to the following gettext calls: One for each keybinding: "The keybinding to do something." One containing the string "The format looks like \"< Control>a\" or \"<Shift><Alt>F1\"." One containing the sentence about the liberal nature of the parser. One about how you can set the option to "disabled". Steps to reproduce: 1. 2. 3. Actual results: Expected results: Does this happen every time? Other information:
The strings come from metacity/src/metacity.schemas.in. As that isn't C, I have no idea how I'd go about "referencing" other strings within the schema in order to avoid duplicating them. If someone else knows how, patches would be welcome.
If anyone has any ideas about how to do this, please speak up. (Would entities work?) -> NEEDINFO.
I'm quite sure the current infrastructure (i.e. intltool-extract/merge) doesn't permit such improvements. So I tend to suggest this is a WON'T FIX. It may be worth to open an enhancement bug in intltool for such a functionality.
Another way to do this is to write the long explanation elsewhere. Would it, say, be possible to include the long explanation in a sort of common parent node for all these entries? If it is possible, I'd say that it is a more elegant solution whether translations are involved or not. But regarding translations, is it really necessary to translate these messages? I cannot even find them in GConf.
I also see this as WONTFIX as long as there's no infrastructure to append/concatenate substrings in schema files.
I think this is FIXED in the most recent checkin.