[hgbook] Italian version available

Giulio Piancastelli giulio.piancastelli at gmail.com
Mon Sep 7 16:12:53 CDT 2009


On Mon, Sep 7, 2009 at 3:22 PM, Paolo Berto<pberto at jupiter-jazz.com> wrote:

> I think the terminology should be the *exact same* used by the english
> version of mercurial.
> So merge is merge, and "fare un merge" is correct from my point of view
> ("fare una unione" would be confusing from the usability side).

I assume we're talking about the software here, not (only) the book.
However, I do not agree.

What's a message doing on your screen when you issue a command? It
typically explains what the software is doing. Now, suppose that there
is a command XYZ, and you don't know what the meaning of the word XYZ
is in the language that the software is written in. Keeping XYZ
everywhere in a translation does not help the user to understand.
Suppose the user issues "hg XYZ"... he probably expects the message to
give him a hint at what operation the command is performing, but if
the message just says "I'm doing a XYZ" the user is just as blind and
confused as it was before. It's like you ask "What does XYZ mean?" and
the software answers "It means 'do a XYZ'!" You can clearly see that
this does not help. Instead, translating terms where it's possible
gives a more comfortable environment to non-native English speakers,
who presumably decided to switch the UI language exactly because they
do not speak English fluently (or at all). Mixing Italian and English
words too much is going to add confusion, it just "sounds wrong" to
the Italian-only speaker, thus it should be very limited across an
internationalized software.

> All commands names should stay the same, and such names should be referenced
> across the text with original naming.

I didn't change the command names. When the text reports the use of
e.g. "hg merge", I kept it as such, of course. Then, when the text
(both in the book and in the software UI messages) explains what "hg
merge" does, I did translate "merge" to the "proper" Italian word.

> Also from my perspective it makes no sense o translate the output of a
> command in italian, like in this case:
>
>> changeset:   0:0a04b987be5a
>> utente: mpm at selenic.com
>> data: Fri Aug 26 01:20:50 2005 -0700
>> sommario: Crea il classico programma "ciao, mondo".

First of all, this is just like i18n works. The UI/output messages are
translated in another language, because they deal with the interface
to the user, not some internal code that the regular user is not going
to see. So, are you saying that i18n just doesn't make sense? Or that
a person who decides to try Mercurial for a first ride should know
English enough to read and completely understand its default English
UI, messages and all? I think these points of view are quite difficult
to cope with, well, reality, so you probably mean something else that
I do not entirely understand.

Second, Mercurial itself is being i18n-alized, and an Italian
translation is already available. Why should I have avoided to use
(partially or entirely) it at all?

Besides, assuming that a reader chooses the Italian translation of the
book because he's not comfortable with English, littering the book
with untranslated messages is not helpful at all. I concede that this
is quite controversial, in the sense that A LOT of translated books
here in Italy leave the code untouched (e.g. I've just seen today
Italian copies of "Effective Java" and "JavaScript: The Good Parts"
that didn't translate variable names and such in code), but typically
even those books DO translate "messages", that is 1) comments and 2)
strings. The output you are questioning fully belongs to the
"messages" category: words to the left of the colon are UI messages
printed by the software, and the last line is the commit message.

> Anyhow, good work!

Thanks!

Regards,
Giulio Piancastelli



More information about the Mercurial mailing list