[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-i18n-doc
Subject:    Re: Ok to fix translation bug in KStars?
From:       Chusslove Illich <caslav.ilic () gmx ! net>
Date:       2007-11-19 23:28:05
Message-ID: 200711200028.09651.caslav.ilic () gmx ! net
[Download RAW message or body]

[Attachment #2 (multipart/mixed)]


> [: Jason Harris :]
> The following patch shows the proposed strings changes: [...]

In this particular case, I'd say it's best to write both sets in full,
without insertions, as recommended by Marta in #151424. That's only 8
instead of 4 messages, and certainly not likely to increase.

In general, when writing out all combinations is "decidedly inconvenient",
for KDE4 one should just add contexts generously, rather than trying some
compromise fixes. Just for illustration, such a patch for this case could be
as attached. (It's also best to avoid concatenating messages, as in
sTip += ....) Translators are then well informed, and can script the
different forms to their liking; in my language I could do:

  msgid "degrees"
  msgstr ""
  "stepeni"
  "|/|"
  "$[properties dative 'stepenima']

  ...

  msgctxt ""
  "%1 is 'degrees' or 'hours', %2 'arcminutes' or 'minutes', "
  "%3 'arcseconds' or 'seconds', which are all translated above"
  msgid ""
  "This box displays an angle in %1. The three numbers displayed are the "
  "angle's %1, %2, and %3."
  msgstr ""
  "Ovde je prikazan ugao u %1. Tri data broja su %1, %2 i %3 ugla."
  "|/|"
  "Ovde je prikazan ugao u $[dative %1]. Tri data broja su %1, %2 i %3 ugla."

(and Polish would use something quite similar).

-- 
Chusslove Illich (Часлав Илић)
Serbian KDE translation team

["kstarts-i18n-quasifix.diff" (text/x-diff)]

Index: dmsbox.cpp
===================================================================
--- dmsbox.cpp	(revision 738482)
+++ dmsbox.cpp	(working copy)
@@ -97,19 +97,27 @@
     QString sMin = ( t ? i18n( "arcminutes" ) : i18n( "minutes" ) );
     QString sSec = ( t ? i18n( "arcseconds" ) : i18n( "seconds" ) );
 
-    QString sTip = i18n( "Angle value in %1.", sDeg );
+    QString sTip;
     QString sWhatsThis;
 
     if ( isReadOnly() ) {
-        sWhatsThis = i18n( "This box displays an angle in %1. "
+        sTip = i18nc( "%1 is 'degrees' or 'hours', which are translated above",
+                     "Angle value in %1.", sDeg );
+        sWhatsThis = i18nc( "%1 is 'degrees' or 'hours', %2 'arcminutes' or 'minutes', "
+                           "%3 'arcseconds' or 'seconds', which are all translated above",
+                           "This box displays an angle in %1. "
                            "The three numbers displayed are the angle's "
                            "%1, %2, and %3." , sDeg, sMin, sSec);
     } else {
-        sTip += i18n( "  You may enter a simple integer, or a floating-point value, "
-                      "or space- or colon-delimited values specifying "
-                      "%1, %2 and %3" , sDeg, sMin, sSec);
+        sTip += i18nc( "%1 is 'degrees' or 'hours', %2 'arcminutes' or 'minutes', "
+                      "%3 'arcseconds' or 'seconds', which are all translated above",
+                      "Angle value in %1.  You may enter a simple integer, or a "
+                      "floating-point value, or space- or colon-delimited values "
+                      "specifying %1, %2 and %3" , sDeg, sMin, sSec);
 
-        sWhatsThis = i18n( "Enter an angle value in %1.  The angle can be expressed "
+        sWhatsThis = i18nc( "%1 is 'degrees' or 'hours', %2 'arcminutes' or 'minutes', "
+                           "%3 'arcseconds' or 'seconds', which are all translated above",
+                           "Enter an angle value in %1.  The angle can be expressed "
                            "as a simple integer (\"12\"), or floating-point "
                            "(\"12.33\") value, or as space- or colon-delimited "
                            "values specifying %1, %2 and %3 (\"12:20\", \"12:20:00\", "

["signature.asc" (application/pgp-signature)]

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic