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-Noël Avila" <jn.avila@free.fr>
Cc: git <git@vger.kernel.org>
Subject: Re: [PATCH v3 2/2] l10n: Add git-add.txt to localized man pages
Date: Wed, 22 Mar 2017 11:02:09 -0700	[thread overview]
Message-ID: <xmqqpoh9kx5q.fsf@gitster.mtv.corp.google.com> (raw)
In-Reply-To: <5036581a-f989-2db6-06ba-621db05c6de1@free.fr> ("Jean-Noël Avila"'s message of "Wed, 22 Mar 2017 13:01:31 +0100")

Jean-Noël Avila <jn.avila@free.fr> writes:

>> I am wondering if Documentation/po part should be a separate
>> repository, with a dedicated i18n/l10n coordinator.  Would it make
>> it easier for (1) those who write code and doc without knowing other
>> languages, (2) those who update .pot and coordinate the l10n effort
>> for the documentation and (3) those who translate them if we keep
>> them in a single repository?
>
> This is one of the points raised in the first RFC mail. Splitting this
> part would help a lot manage the translations with their own workflow,
> would not clutter the main repo with files not really needed for
> packaging and would simplify dealing with the interaction with crowd
> translation websites which can directly push translation content to a
> git repo.

As I was in favor of splitting it out, I was trying to gauge what
the downside of doing so would be, especially for those who are
doing the translation work (it is obvious that it would help
developers who are not translators, as nothing will change for them
if we keep this new thing as a separate project).

We may still want to fill in the details (and by doing so we may
discover it is not as easy as I make it sound to be here), but a
rough outline of what I think we could do is:

 * What you added to Documentation/po/ in these two patches becomes
   a separate project (let's call it "gitman-l10n") and they will be
   at the root level of the project, i.e. documentation.pot and
   documentation.$LANG.po will sit at the top level of the working
   tree of that project, without Documentation/po/ prefix.  

   The idea is for some of us to have a checkout of "gitman-l10n"
   project inside Documentation/po of the checkout of git.git
   project and achieve a layout similar to what these two patches
   from you create, but keep that optional.

 * In git.git, teach Documentation/Makefile to enable "make
   doc-l10n" and "make install-l10n" targets in "Documentation/" if
   and only if Documentation/po/Makefile exists, and delegate these
   two targets to it, i.e. something like:

   (in Documentation/Makefile)
   ifeq ($(wildcard po/Makefile),po/Makefile)
   doc-l10n install-l10n::
	$(MAKE) -C po $@
   endif

   Certain Makefile macros Documentation/Makefile knows aboute
   (e.g. location to install, list of pages in the man1 section) may
   have to be exported down to Documentation/po/Makefile.

 * Some other Makefile targets to help i18n coordinator, e.g.
   updating Documentation/po/documentation.pot by using the latest
   set of Documentation/*.txt files, may also have to be added to
   Documentation/Makefile and conditionally enabled the same way
   (i.e. keying off of the presence of po/Makefile).

 * Those who work on the documentation translation and those who
   want to build and install localized documentation will have a
   checkout of the "gitman-l10n" project at "Documentation/po".
   This will _eventually_ be done by making "gitman-l10n" a
   submodule that git.git project uses, but it can start as a manual
   "clone and checkout" without making it a submodule.  Those who do
   not deal with localized manpages can just work with git.git
   proper without even knowing anything about the gitman-l10n
   project.

I'd prefer to start with the "optional gitman-l10n repository is
checked out at Documentation/po only by convention" approach, before
committing to bind it as a submodule.  Once we got comfortable with
cooperating between these two projects, we do want to bind them
using the submodule mechanism, but not before.

Once git.git starts binding the "gitman-l10n" project as its
submodule at "Documentation/po", we may want to start using "git
archive --recurse-submodules" when cutting a release tarball, when
that option becomes usable.

I'd prefer to start with the "main tarball" with "optional language
pack tarball" approach for releases, which is more flexible to the
end users (and less change to the workflow).  Once we gain more
experience, we may want to produce a single ball of wax tarball as
well (or "only a single one").


  reply	other threads:[~2017-03-22 18:02 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
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 [this message]
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=xmqqpoh9kx5q.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).