To: Inkscape Translators' list
Cc: Christian Perrier, Debian-Installer co-ordinator (FYI ;) )

On 18/08/2007, at 12:53 AM, Xavier Conde Rueda wrote:

Hi all,

many thanks for your help! Anyway, I think developers should add
comments explaining the meaning of these terms, so I'll open a
bugzilla case for it too.

Actually, the Inkscape PO file explains a lot more terms than any other graphics package I've translated.

The Best and the Worst in i18n Context
_________________________________________

BEST: The Debian Installer Level 1 file has excellent, detailed use of contextual information.

WORST: GIMP is notorious for its cryptic strings and complete lack of context. When I queried some strings which were one character long and had no explanation whatsoever, the developer responded curtly, "You should know what it means." Gee, I should be an expert on all aspects of software.
_________________________________________

Inkscape ranks close to the top. :)

However, that's because most PO files don't supply contextual information. They should, if they want accurate translations.

I suggest Inkscape starts using the msgctxt [1] feature in the more recent gettext packages. This feature has been created specifically for contextual information, and works with translation memory, so we don't have the context all mixed up with the string IDs.

Instead of:

msgid "action|Clone"

msgid "object|Clone"

(context should _never_ be quoted in the original string)

or

#, This is an action
msgid "Clone"

#, This is an object
msgid "Clone"

You have:

msgctxt "Action"
msgid "Clone"
msgstr ""

msgctxt "Object"
msgid "Clone"
msgstr ""

This is a much easier to manipulate with translation memory and merging, and much less confusing, in every way.

Xavier, please quote your bug link here, and I'll add the info on msgctxt. :)

from Clytie (vi-VN, Vietnamese free-software translation team / nhóm Việt hóa phần mềm tự do)
http://groups-beta.google.com/group/vi-VN

[1] GUI program support:
  - PO files can now contain messages constrained to a certain context.
Most often such a context is a menu, dialog or panel identification.
    The syntax in the PO file is
      msgctxt "context"
      msgid "original"
      msgstr "translation"
  - The xgettext program can be told through the --keyword flag which
    function/macro argument has the role of a context.
- The (non-public) include file gettext.h defines macros pgettext, dpgettext
    etc. that take a context argument.
  For more information, see the node "Contexts" in the manual.

http://www.gnu.org/software/gettext/manual/

I also recommend using msgid-previous, which allows you to diff changed strings. D-I uses that, too. They set an excellent example for the rest of free-software i18n.

Attachment: PGP.sig
Description: This is a digitally signed message part

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
Inkscape-translator mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/inkscape-translator

Reply via email to