qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 7/9] gtk: add translation support (v5)


From: Daniel P. Berrange
Subject: Re: [Qemu-devel] [PATCH 7/9] gtk: add translation support (v5)
Date: Wed, 20 Feb 2013 16:53:46 +0000
User-agent: Mutt/1.5.21 (2010-09-15)

On Wed, Feb 20, 2013 at 05:24:02PM +0100, Andreas Färber wrote:
> Am 20.02.2013 17:16, schrieb Daniel P. Berrange:
> > On Wed, Feb 20, 2013 at 05:10:54PM +0100, Andreas Färber wrote:
> >> Am 20.02.2013 14:43, schrieb Anthony Liguori:
> >>> This includes a de_DE translation from Kevin Wolf and an it translation 
> >>> from
> >>> Paolo Bonzini.
> >>>
> >>> Cc: Paolo Bonzini <address@hidden>
> >>> Cc: Kevin Wolf <address@hidden>
> >>> Cc: Stefan Hajnoczi <address@hidden>
> >>> Signed-off-by: Anthony Liguori <address@hidden>
> >>> ---
> >>> v1 -> v4
> >>>  - Don't use '|| exit 1' with sub-invocation of make
> >>>  - Actually include Kevin's translation
> >>> v4 -> v5
> >>>  - Update translations (Kevin and Paolo)
> >>>  - Fix 'make update' for it.po
> >>> ---
> >>>  Makefile       |  3 +++
> >>>  configure      |  4 +++-
> >>>  po/Makefile    | 46 ++++++++++++++++++++++++++++++++++++++++++++++
> >>>  po/de_DE.po    | 45 +++++++++++++++++++++++++++++++++++++++++++++
> >>>  po/it.po       | 45 +++++++++++++++++++++++++++++++++++++++++++++
> >>>  po/messages.po | 45 +++++++++++++++++++++++++++++++++++++++++++++
> >>>  ui/gtk.c       | 22 +++++++++++++++-------
> >>>  7 files changed, 202 insertions(+), 8 deletions(-)
> >>>  create mode 100644 po/Makefile
> >>>  create mode 100644 po/de_DE.po
> >>>  create mode 100644 po/it.po
> >>>  create mode 100644 po/messages.po
> >>
> >> IIUC this uses the English texts as key for lookup of translations.
> >> Experience shows that while that is most convenient for the English it
> >> leads to grammatical mistakes in other languages due to text reuse in
> >> wrong contexts. A prominent example is "Server" being translated as
> >> "Kellner" (which is waiter) in some early Windows NT version. :) More
> >> recent examples commonly found are ambiguities of, e.g., "Update" as
> >> noun vs. imperative - happens if the same wording is used in a menu and
> >> in some options dialog or status text. Similar for ing-forms translated
> >> as noun vs. infinitive vs. first-person present.
> >>
> >> Better would be to use unique alphanumeric identifiers (e.g.,
> >> "Menu.File.Quit") and to have a regular translation file for en (or
> >> whatever suitable as fallback).
> > 
> > Your points may be valid, but this patch follows standard practice for
> > i18n of any GTK app, in fact standard across pretty much all open
> > source projects I've worked on. I don't think QEMU should try to do
> > something non-standard for translation files.
> 
> Not having translations may be better quality-wise than having known
> broken translations just because that is considered standard practice by
> English speakers that don't actually see or need them.

People doing the translations simply need to be aware of the issue and
look at the context of the usage. Developes can help them do this by
putting special comments in the source code to provide hints on context
eg

  /* TRANSLATORS: ....some hint texts.... */
  foo(_("Some string"))

this text gets copied into the .pot file

  #. TRANSLATORS: ...some hint texts...
  #: filename.c
  msgid "Some string"
  msgstr ""

so the translators can then understand the usage context & do the right
translation.

Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|



reply via email to

[Prev in Thread] Current Thread [Next in Thread]