Re: [PATCH] Update l10n guide

6 messages, 4 authors, 2016-06-15 · open the first message on its own page

Re: [PATCH] Update l10n guide

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:53:11

Jiang Xin [off-list ref] writes:
2012/2/29 Junio C Hamano [off-list ref]:
quoted
@@ -1,33 +1,78 @@
+The localization (l10n) coordinator, Jiang Xin <worldhello.net@gmail.com>,
+coordinates our localization effort in his repository:
+
+        https://github.com/gotgit/git-po/
I create a new dedicated team, named git-l10n, and transfer this repo to the
new place: https://github.com/git-l10n/git-po/ for the following reasons:

 - git-po is a long-term repo, so has a dedicated, stabilized URL is better.
   The repo URL may not change if l10n coordinator change.

 - git-l10n is a github organization account, and has a dedicated owners
   group, who can assign new l10n coordinator.

 - Owners group of git-l10n organization will not receive pull requests to
   git-po. I add gister, avar to the owners team.

 - Members of the git-l10n-coordinators team of git-l10n organization
   will receive pull requests.

 - Some Chinese guys used to send pull request to gotgit/git-po, so you
   can find some closed pull requests written in Chinese. It won't happen
   after the repo transfer to git-l10n/git-po.
It is unclear the distinction between gotgit and git-l10n but I am
guessing that (1) you feel "gotgit" is more for _your_ personal use, (2)
you happen to be the volunteer coordinator right now, but (3) the team
effort deserves more permanent home, detached from your identity.

And if that is the case, I agree 100% with the reasoning.
quoted
+As a contributor for a language XX, you would fork this repository,
As a contributor for a language XX, you should first check TEAMS file in
this directory to see whether a dedicated repository for your language XX
exists. Fork the dedicated repository and start to work if it exists.

If you are the first contributor for the language XX, please fork this
repository,
That's better.
quoted
+prepare and/or update the translated message file po/XX.po (described
+later), and ask the l10n coordinator to pull your work.
Shall we remind the contributors for l10n to write commit log in English,
but not language XX? It's a common mistake for translators.
I would prefer to see the subject line (the first line summary) in English
to say something like "Update zh_CN translation for 1.7.12".  That much of
English shouldn't be too much burden for language teams.

On the other hand, the body of the log that describes the change _may_ be
hurt if you forbid the use of language XX.  The translators may want to
write something like:

	The earlier translation used word '[%#$@$#]' for original phrase
	'to distim' in English, but word '[**&*#$]' is a more appropriate
        language XX translation in the context the message for such and
	such reasons.

and I suspect that "for such and such reasons" part is far easier to
explain and understand if written in language XX for native speakers of
language XX.  Such a description often has to discuss connotations and
subtle nuances of the particular word that is hard to explain.
quoted
diff --git a/po/TEAMS b/po/TEAMS
new file mode 100644
index 0000000..8ee6199
--- /dev/null
+++ b/po/TEAMS
@@ -0,0 +1,10 @@
+Core Git translation language teams
+(please keep the list sorted alphabetically on language field)
+
+Language:      is (Icelandic)
+Leader:                Ævar Arnfjörð Bjarmason <avarab@gmail.com>
+
I think we should add the URL of the dedicated repository for language XX here.
Example:

Language:      zh_CN (Simplified Chinese)
Leader:           Jiang Xin [off-list ref]
Homepage:     https://github.com/jiangxin/git-po-zh_CN/
Good thinking; I don't know if Homepage or Repository is more appropriate,
but some URL would definitely help.
quoted
+Members:       Yichao Yu [off-list ref]
+               Riku [off-list ref]
Contributors and members can add to the header of the XX.po file.
Add here may cause the TEAMS file grows rapidly.
Sorry, I do not understand what you are worried about here.  Could you
clarify a bit?

In any case, the patch you are replying to is "I'd like to see *something*
*like* *this*...", so feel free to take the ownership and update it.  I'll
try to help refining it if you send an updated draft to back the list for
review.

Thanks.

Re: [PATCH] Update l10n guide

From: Jiang Xin <hidden>
Date: 2016-06-15 22:53:12

2012/3/1 Junio C Hamano [off-list ref]:
quoted
Shall we remind the contributors for l10n to write commit log in English,
but not language XX? It's a common mistake for translators.
I would prefer to see the subject line (the first line summary) in English
to say something like "Update zh_CN translation for 1.7.12".  That much of
English shouldn't be too much burden for language teams.
I noticed that all i18n related commit logs all have prefix "i18n:".
It would be nice to add a prefix "l10n:" to the l10n related commit log,
such as: "l10n: Update zh_CN translation for 1.7.12".
On the other hand, the body of the log that describes the change _may_ be
hurt if you forbid the use of language XX.  The translators may want to
write something like:
Git does not handle multi-bytes character well. Multi-bytes characters
not convert to UTF-8 when git write tree objects and commit objects.
I think allow multi-bytes characters in commit log would hurt git.git until
git gives full support UTF-8 (are there any plans for this?).
I just tested several versions of msysgit:

 - Only Git-1.7.8-preview20111229-unicode.exe saves commit objects
   with utf-8 encode.

 - Other versions such as Git-1.7.9-preview20120201.exe and
   Git-1.7.8-preview20111206.exe will not convert multi-bytes characters
   in commit log into UTF-8.

-- 
Jiang Xin

[PATCH] Update l10n guide: change the repository URL, etc

From: Jiang Xin <hidden>
Date: 2016-06-15 22:53:12

Host the l10n coordinator repository in a dedicated github organization
account "git-l10n", so that the team may have a more permanent home.
Also add a hint about reference of TEAMS file for l10n contributors.

Update TEAMS file with new zh_CN l10n team members and a repository URL.

Signed-off-by: Jiang Xin <redacted>
---
 po/README |   17 +++++++++--------
 po/TEAMS  |    9 +++++++--
 2 files changed, 16 insertions(+), 10 deletions(-)
diff --git a/po/README b/po/README
index 64808..188ea 100644
--- a/po/README
+++ b/po/README
@@ -6,22 +6,23 @@ describes how you can contribute to the effort of enhancing the language
 coverage and maintaining the translation.
 
 The localization (l10n) coordinator, Jiang Xin <worldhello.net@gmail.com>,
-coordinates our localization effort in his repository:
+coordinates our localization effort in the l10 coordinator repository:
 
-        https://github.com/gotgit/git-po/
+        https://github.com/git-l10n/git-po/
 
-As a contributor for a language XX, you would fork this repository,
-prepare and/or update the translated message file po/XX.po (described
-later), and ask the l10n coordinator to pull your work.
+As a contributor for a language XX, you should first check TEAMS file in
+this directory to see whether a dedicated repository for your language XX
+exists. Fork the dedicated repository and start to work if it exists.
+
+If you are the first contributor for the language XX, please fork this
+repository, prepare and/or update the translated message file po/XX.po
+(described later), and ask the l10n coordinator to pull your work.
 
 If there are multiple contributors for the same language, please first
 coordinate among yourselves and nominate the team leader for your
 language, so that the l10n coordinator only needs to interact with one
 person per language.
 
-For the list of exiting translations and language teams, see TEAMS file in
-this directory.
-
 The overall data-flow looks like this:
 
     +-------------------+            +------------------+
diff --git a/po/TEAMS b/po/TEAMS
index 8ee61..1d173 100644
--- a/po/TEAMS
+++ b/po/TEAMS
@@ -5,6 +5,11 @@ Language:	is (Icelandic)
 Leader:		Ævar Arnfjörð Bjarmason <avarab@gmail.com>
 
 Language:	zh_CN (Simplified Chinese)
+Repository:	https://github.com/gotgit/git-po-zh_CN/
 Leader:		Jiang Xin <worldhello.net@gmail.com>
-Members:	Yichao Yu <yyc1992@gmail.com>
-		Riku <lu.riku@gmail.com>
+Members:	Riku <lu.riku AT gmail.com>
+		Zhuang Ya <zhuangya AT me.com>
+		Lian Cheng <rhythm.mail AT gmail.com>
+		Yichao Yu <yyc1992 AT gmail.com>
+		ws3389 <willsmith3389 AT gmail.com>
+		Thynson <lanxingcan AT gmail.com>
-- 
1.7.9.2.322.g7ac1c

Re: [PATCH] Update l10n guide

From: Johannes Sixt <hidden>
Date: 2016-06-15 22:53:12

Am 3/2/2012 8:30, schrieb Jiang Xin:
Git does not handle multi-bytes character well. Multi-bytes characters
not convert to UTF-8 when git write tree objects and commit objects.
It does not convert, but it records which encoding the text has. If you
don't specify anything, UTF-8 is assumed, and if your text is actually not
UTF-8, the result is necessarily garbage.
I think allow multi-bytes characters in commit log would hurt git.git until
git gives full support UTF-8 (are there any plans for this?).
I just tested several versions of msysgit:

 - Only Git-1.7.8-preview20111229-unicode.exe saves commit objects
   with utf-8 encode.

 - Other versions such as Git-1.7.9-preview20120201.exe and
   Git-1.7.8-preview20111206.exe will not convert multi-bytes characters
   in commit log into UTF-8.
Then you haven't set i18n.commitEncoding. Try this:

   git config i18n.commitEncoding CP936

(substitute whatever Windows codepage you are using).

-- Hannes

Re: [PATCH] Update l10n guide

From: Jiang Xin <hidden>
Date: 2016-06-15 22:53:12

2012/3/2 Johannes Sixt [off-list ref]:
It does not convert, but it records which encoding the text has. If you
don't specify anything, UTF-8 is assumed, and if your text is actually not
UTF-8, the result is necessarily garbage.

Then you haven't set i18n.commitEncoding. Try this:

  git config i18n.commitEncoding CP936
I know there are two config variables. i18n.commitEncoding will insert
a "encoding XX" line to the commit object, while i18n.logOutputEncoding
will set the default output encoding. But this implementation seems like
a workaround.

* Tree objects do not have such implementation, so multibyte characters
   can not be used as filenames.

* Commit object without "encoding" instruction will be used as it is. So
  people under the same non-utf8 locale may not notice that they
  have not set the proper i18n.commitEncoding, until one day they
  need accross platform development.

* As raw commit log alway used as fallback, sometimes it is hard to find
  commit objects with wrong encoding instructions.

I think save commit object, tree object, packed-refs in UTF-8 is
a better implementation.

-- 
Jiang Xin

Re: [PATCH] Update l10n guide

From: Jakub Narebski <hidden>
Date: 2016-06-15 22:53:12

Jiang Xin [off-list ref] writes:
2012/3/2 Johannes Sixt [off-list ref]:
quoted
It does not convert, but it records which encoding the text has. If you
don't specify anything, UTF-8 is assumed, and if your text is actually not
UTF-8, the result is necessarily garbage.

Then you haven't set i18n.commitEncoding. Try this:

  git config i18n.commitEncoding CP936
I know there are two config variables. i18n.commitEncoding will insert
a "encoding XX" line to the commit object, while i18n.logOutputEncoding
will set the default output encoding.
Note that according to documentation 'git commit' issues a warning if
the commit log message given to it does not look like a valid UTF-8
string, unless you explicitly say your project uses a legacy encoding.
Modern git would also warn if you have NUL ("\0") character in your
commit message, e.g. when using UCS-2 / UTF-16 encoding.
But this implementation seems like a workaround.

* Tree objects do not have such implementation, so multibyte characters
  can not be used as filenames.
And there is no place on pathnameEncoding in 'tree' object,
unfortunately.

One proposed solution was to convert filenames from filesystem
encoding to normal-form composed UTF-8 when creating tree objects, but
this would have to be optional.

Anyway at least for source code using characters outside US-ASCII is
really discouraged anyway.  Note also that sample 'pre-commit' hook
prevents adding files with non-ascii filenames.
 
* Commit object without "encoding" instruction will be used as it is. So
  people under the same non-utf8 locale may not notice that they
  have not set the proper i18n.commitEncoding, until one day they
  need accross platform development.
But see above.
 
* As raw commit log alway used as fallback, sometimes it is hard to find
  commit objects with wrong encoding instructions.

I think save commit object, tree object, packed-refs in UTF-8 is
a better implementation.
Backward compatibiltiyt and performance.

-- 
Jakub Narebski
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help