git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Jean-Noel Avila <jn.avila@free.fr>
Cc: git@vger.kernel.org
Subject: Re: [PATCH] l10n: add framework for localizing the manpages
Date: Sun, 12 Mar 2017 17:01:20 -0700	[thread overview]
Message-ID: <xmqq1su2ujsf.fsf@gitster.mtv.corp.google.com> (raw)
In-Reply-To: <20170312200248.3610-2-jn.avila@free.fr> (Jean-Noel Avila's message of "Sun, 12 Mar 2017 21:02:48 +0100")

Jean-Noel Avila <jn.avila@free.fr> writes:

> +#. type: Title =
> +#: git-add.txt:2
> +#, no-wrap
> +msgid "git-add(1)"
> +msgstr "git-add(1)"
> +
> +#. type: Title -
> +#: git-add.txt:5
> +#, no-wrap
> +msgid "NAME"
> +msgstr "NOM"
> +
> +#
> +#. type: Plain text
> +#: git-add.txt:7
> +msgid "git-add - Add file contents to the index"
> +msgstr "git-add - Ajoute le contenu de fichiers à l'index"
> +
> +#. type: Title -
> +#: git-add.txt:9
> +#, no-wrap
> +msgid "SYNOPSIS"
> +msgstr "SYNOPSIS"

It is a wonderful goal to make localized manpages and corresponding
HTMLized documents available, and the above might look reasonable,
but other parts of what the translaters need to do we see below
makes me wonder if this is a sensible approach.

> +#. type: Plain text
> +#: git-add.txt:15
> +#, no-wrap
> +msgid ""
> +"'git add' [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | -i] [--patch | -p]\n"
> +"\t  [--edit | -e] [--[no-]all | --[no-]ignore-removal | [--update | -u]]\n"
> +"\t  [--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing]\n"
> +"\t  [--chmod=(+|-)x] [--] [<pathspec>...]\n"
> +msgstr ""
> +"'git add' [-n] [-v] [--force | -f] [--interactive | -i] [--patch | -p]\n"
> +"\t  [--edit | -e] [--[no-]all | --[no-]ignore-removal | [--update | -u]]\n"
> +"\t  [--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing]\n"
> +"\t  [--] [<chemin>...]\n"

This shows that even after adding just _one_ new option to the
command, the whole thing need to be re-translated (the SYNOPSIS
section may be a bad example, as not much is subject to i18n,
though).  If each paragraph of the description section becomes a
single string that need to be re-translated, as we can see below, I
am not sure if it really helps the translators.  A mere single
rephrasing of a word in a large paragraph would have to result in
the entire paragraph to be translated again?

> +#. type: Title -
> +#: git-add.txt:17
> +#, no-wrap
> +msgid "DESCRIPTION"
> +msgstr "DESCRIPTION"
> +
> +#
> +#. type: Plain text
> +#: git-add.txt:24
> +msgid ""
> +"This command updates the index using the current content found in the "
> +"working tree, to prepare the content staged for the next commit.  It "
> +"typically adds the current content of existing paths as a whole, but with "
> +"some options it can also be used to add content with only part of the "
> +"changes made to the working tree files applied, or remove paths that do not "
> +"exist in the working tree anymore."
> +msgstr ""
> +"Cette commande met à jour l'index en utilisant le contenu actuel trouvé dans "
> +"la copie de travail, pour préparer le contenu de la prochaine validation. "
> +"Typiquement, elle ajoute intégralement le contenu actuel des chemins "
> +"existant, mais peut aussi n'ajouter que certaines parties des modifications "
> +"au moyen d'options ou soustraire certains chemins qui n'existent plus dans "
> +"la copie de travail."

It almost makes me suggest that a totally different approach might
be more manageable.  For example, we can pick one version of a
source file (say, "v2.12.0:Documentation/git-add.txt"), have it
fully translated to the target languages, _and_ make it a convention
to record the original blob object name at the end of the translated
file.  Perhaps "Documentation/l10n/fr/git-add.txt" may record the
result of such translation effort.

And then, when somebody wants to update the translation for v2.13.0,
perhaps 

    git diff --color-words $old_blob v2.13.0:Documentation/git-add.txt

(where $old_blob is taken from Documentation/l10n/fr/git-add.txt)
can be examined and then Documentation/l10n/fr/git-add.txt can be
adjusted to match the changes between the two versions.  After that,
update the "source" blob object name in the translation.

So, I dunno.  I like the goal and appreciate the effort to get to
that goal.  I am not sure what the best approach would be and the
sample translation mechanism I see in this patch makes me doubt that
it is the best approach.

Thanks.

  parent reply	other threads:[~2017-03-13  0:01 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-12 20:02 [PATCH] l10n: add framework for localizing the manpages Jean-Noel Avila
2017-03-12 20:02 ` Jean-Noel Avila
2017-03-12 20:36   ` Jean-Noël AVILA
2017-03-13  0:01   ` Junio C Hamano [this message]
2017-03-14 21:00     ` Ævar Arnfjörð Bjarmason
2017-03-14 21:13       ` Junio C Hamano
2017-03-15  8:11       ` Jean-Noël Avila
2017-03-15  9:01         ` Ævar Arnfjörð Bjarmason
2017-03-15  7:58     ` Jean-Noël Avila
2017-03-15 16:07       ` Junio C Hamano
2017-03-15 18:28       ` Stefan Beller
2017-03-18 17:53 ` [PATCH v2 1/2] l10n: Introduce framework for localizing man pages Jean-Noel Avila
2017-03-18 17:53   ` [PATCH v2 2/2] l10n: Add git-add.txt to localized " Jean-Noel Avila
2017-03-18 19:41   ` [PATCH v2 1/2] l10n: Introduce framework for localizing " Junio C Hamano
2017-03-18 22:17     ` Jean-Noël AVILA
2017-03-18 23:03     ` Junio C Hamano
2017-03-20  2:11       ` Junio C Hamano
2017-03-20  8:10         ` Jean-Noël Avila
2017-03-20  8:21           ` Jean-Noël AVILA
2017-03-20 16:50           ` Junio C Hamano
2017-03-20 21:02 ` Rework manpage localisation Jean-Noel Avila
2017-03-20 21:02   ` [PATCH v3 1/2] l10n: Introduce framework for localizing man pages Jean-Noel Avila
2017-03-21 18:09     ` Junio C Hamano
2017-03-20 21:02   ` [PATCH v3 2/2] l10n: Add git-add.txt to localized " Jean-Noel Avila
2017-03-20 22:05     ` Junio C Hamano
2017-03-22 12:01       ` Jean-Noël Avila
2017-03-22 18:02         ` Junio C Hamano
2017-03-22 18:41           ` Stefan Beller
2017-03-22 18:56             ` Junio C Hamano
2017-03-22 18:59               ` Stefan Beller
2017-03-24 14:21                 ` Michael J Gruber
2017-03-25 15:40           ` Jean-Noël AVILA
2017-03-26 22:56             ` Junio C Hamano
2017-03-27 20:12               ` Jean-Noël AVILA
2017-03-27 20:29                 ` Junio C Hamano
2017-03-24 15:58       ` Ævar Arnfjörð Bjarmason
2017-03-24 17:57         ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqq1su2ujsf.fsf@gitster.mtv.corp.google.com \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    --cc=jn.avila@free.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).