git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] i18n: branch: mark strings for translation
@ 2013-04-13  2:22 Jiang Xin
  2013-04-13  4:29 ` Duy Nguyen
  0 siblings, 1 reply; 6+ messages in thread
From: Jiang Xin @ 2013-04-13  2:22 UTC (permalink / raw)
  To: Junio C Hamano, Nguyễn Thái Ngọc Duy; +Cc: Git List, Jiang Xin

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
---
 branch.c | 40 ++++++++++++++++++++--------------------
 1 file changed, 20 insertions(+), 20 deletions(-)

diff --git a/branch.c b/branch.c
index 6ae6a..c8745 100644
--- a/branch.c
+++ b/branch.c
@@ -57,7 +57,7 @@ void install_branch_config(int flag, const char *local, const char *origin, cons
 	if (remote_is_branch
 	    && !strcmp(local, shortname)
 	    && !origin) {
-		warning("Not setting branch %s as its own upstream.",
+		warning(_("Not setting branch %s as its own upstream."),
 			local);
 		return;
 	}
@@ -79,26 +79,26 @@ void install_branch_config(int flag, const char *local, const char *origin, cons
 	if (flag & BRANCH_CONFIG_VERBOSE) {
 		if (remote_is_branch && origin)
 			printf(rebasing ?
-			       "Branch %s set up to track remote branch %s from %s by rebasing.\n" :
-			       "Branch %s set up to track remote branch %s from %s.\n",
+			       _("Branch %s set up to track remote branch %s from %s by rebasing.\n") :
+			       _("Branch %s set up to track remote branch %s from %s.\n"),
 			       local, shortname, origin);
 		else if (remote_is_branch && !origin)
 			printf(rebasing ?
-			       "Branch %s set up to track local branch %s by rebasing.\n" :
-			       "Branch %s set up to track local branch %s.\n",
+			       _("Branch %s set up to track local branch %s by rebasing.\n") :
+			       _("Branch %s set up to track local branch %s.\n"),
 			       local, shortname);
 		else if (!remote_is_branch && origin)
 			printf(rebasing ?
-			       "Branch %s set up to track remote ref %s by rebasing.\n" :
-			       "Branch %s set up to track remote ref %s.\n",
+			       _("Branch %s set up to track remote ref %s by rebasing.\n") :
+			       _("Branch %s set up to track remote ref %s.\n"),
 			       local, remote);
 		else if (!remote_is_branch && !origin)
 			printf(rebasing ?
-			       "Branch %s set up to track local ref %s by rebasing.\n" :
-			       "Branch %s set up to track local ref %s.\n",
+			       _("Branch %s set up to track local ref %s by rebasing.\n") :
+			       _("Branch %s set up to track local ref %s.\n"),
 			       local, remote);
 		else
-			die("BUG: impossible combination of %d and %p",
+			die(_("BUG: impossible combination of %d and %p"),
 			    remote_is_branch, origin);
 	}
 }
@@ -115,7 +115,7 @@ static int setup_tracking(const char *new_ref, const char *orig_ref,
 	int config_flags = quiet ? 0 : BRANCH_CONFIG_VERBOSE;
 
 	if (strlen(new_ref) > 1024 - 7 - 7 - 1)
-		return error("Tracking not set up: name too long: %s",
+		return error(_("Tracking not set up: name too long: %s"),
 				new_ref);
 
 	memset(&tracking, 0, sizeof(tracking));
@@ -134,7 +134,7 @@ static int setup_tracking(const char *new_ref, const char *orig_ref,
 		}
 
 	if (tracking.matches > 1)
-		return error("Not tracking: ambiguous information for ref %s",
+		return error(_("Not tracking: ambiguous information for ref %s"),
 				orig_ref);
 
 	install_branch_config(config_flags, new_ref, tracking.remote,
@@ -179,12 +179,12 @@ int validate_new_branchname(const char *name, struct strbuf *ref,
 			    int force, int attr_only)
 {
 	if (strbuf_check_branch_ref(ref, name))
-		die("'%s' is not a valid branch name.", name);
+		die(_("'%s' is not a valid branch name."), name);
 
 	if (!ref_exists(ref->buf))
 		return 0;
 	else if (!force && !attr_only)
-		die("A branch named '%s' already exists.", ref->buf + strlen("refs/heads/"));
+		die(_("A branch named '%s' already exists."), ref->buf + strlen("refs/heads/"));
 
 	if (!attr_only) {
 		const char *head;
@@ -192,7 +192,7 @@ int validate_new_branchname(const char *name, struct strbuf *ref,
 
 		head = resolve_ref_unsafe("HEAD", sha1, 0, NULL);
 		if (!is_bare_repository() && head && !strcmp(head, ref->buf))
-			die("Cannot force update the current branch.");
+			die(_("Cannot force update the current branch."));
 	}
 	return 1;
 }
@@ -247,7 +247,7 @@ void create_branch(const char *head,
 			}
 			die(_(upstream_missing), start_name);
 		}
-		die("Not a valid object name: '%s'.", start_name);
+		die(_("Not a valid object name: '%s'."), start_name);
 	}
 
 	switch (dwim_ref(start_name, strlen(start_name), sha1, &real_ref)) {
@@ -267,18 +267,18 @@ void create_branch(const char *head,
 		}
 		break;
 	default:
-		die("Ambiguous object name: '%s'.", start_name);
+		die(_("Ambiguous object name: '%s'."), start_name);
 		break;
 	}
 
 	if ((commit = lookup_commit_reference(sha1)) == NULL)
-		die("Not a valid branch point: '%s'.", start_name);
+		die(_("Not a valid branch point: '%s'."), start_name);
 	hashcpy(sha1, commit->object.sha1);
 
 	if (!dont_change_ref) {
 		lock = lock_any_ref_for_update(ref.buf, NULL, 0);
 		if (!lock)
-			die_errno("Failed to lock ref for update");
+			die_errno(_("Failed to lock ref for update"));
 	}
 
 	if (reflog)
@@ -296,7 +296,7 @@ void create_branch(const char *head,
 
 	if (!dont_change_ref)
 		if (write_ref_sha1(lock, sha1, msg) < 0)
-			die_errno("Failed to write ref");
+			die_errno(_("Failed to write ref"));
 
 	strbuf_release(&ref);
 	free(real_ref);
-- 
1.8.2.1.350.g76f6571.dirty

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] i18n: branch: mark strings for translation
  2013-04-13  2:22 [PATCH] i18n: branch: mark strings for translation Jiang Xin
@ 2013-04-13  4:29 ` Duy Nguyen
  2013-04-13 14:08   ` [PATCH v2] " Jiang Xin
  0 siblings, 1 reply; 6+ messages in thread
From: Duy Nguyen @ 2013-04-13  4:29 UTC (permalink / raw)
  To: Jiang Xin; +Cc: Junio C Hamano, Nguyễn Thái Ngọc Duy, Git List

On Sat, Apr 13, 2013 at 12:22 PM, Jiang Xin <worldhello.net@gmail.com> wrote:
> diff --git a/branch.c b/branch.c
> index 6ae6a..c8745 100644
>                 else
> -                       die("BUG: impossible combination of %d and %p",
> +                       die(_("BUG: impossible combination of %d and %p"),
>                             remote_is_branch, origin);
>         }
>  }

You might want to leave this out. I can hardly happen in real life. If
it is, the unfortunate user just needs to copy it straight to
git@vger.
--
Duy

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v2] i18n: branch: mark strings for translation
  2013-04-13  4:29 ` Duy Nguyen
@ 2013-04-13 14:08   ` Jiang Xin
  2013-04-16  2:40     ` Jonathan Nieder
  0 siblings, 1 reply; 6+ messages in thread
From: Jiang Xin @ 2013-04-13 14:08 UTC (permalink / raw)
  To: Junio C Hamano, Nguyễn Thái Ngọc Duy; +Cc: Git List, Jiang Xin

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
Reviewed-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
---
Not mark "BUG: impossible combination of %d and %p", which would
never happen.

 branch.c | 38 +++++++++++++++++++-------------------
 1 file changed, 19 insertions(+), 19 deletions(-)

diff --git a/branch.c b/branch.c
index 6ae6a..4ddd69 100644
--- a/branch.c
+++ b/branch.c
@@ -57,7 +57,7 @@ void install_branch_config(int flag, const char *local, const char *origin, cons
 	if (remote_is_branch
 	    && !strcmp(local, shortname)
 	    && !origin) {
-		warning("Not setting branch %s as its own upstream.",
+		warning(_("Not setting branch %s as its own upstream."),
 			local);
 		return;
 	}
@@ -79,23 +79,23 @@ void install_branch_config(int flag, const char *local, const char *origin, cons
 	if (flag & BRANCH_CONFIG_VERBOSE) {
 		if (remote_is_branch && origin)
 			printf(rebasing ?
-			       "Branch %s set up to track remote branch %s from %s by rebasing.\n" :
-			       "Branch %s set up to track remote branch %s from %s.\n",
+			       _("Branch %s set up to track remote branch %s from %s by rebasing.\n") :
+			       _("Branch %s set up to track remote branch %s from %s.\n"),
 			       local, shortname, origin);
 		else if (remote_is_branch && !origin)
 			printf(rebasing ?
-			       "Branch %s set up to track local branch %s by rebasing.\n" :
-			       "Branch %s set up to track local branch %s.\n",
+			       _("Branch %s set up to track local branch %s by rebasing.\n") :
+			       _("Branch %s set up to track local branch %s.\n"),
 			       local, shortname);
 		else if (!remote_is_branch && origin)
 			printf(rebasing ?
-			       "Branch %s set up to track remote ref %s by rebasing.\n" :
-			       "Branch %s set up to track remote ref %s.\n",
+			       _("Branch %s set up to track remote ref %s by rebasing.\n") :
+			       _("Branch %s set up to track remote ref %s.\n"),
 			       local, remote);
 		else if (!remote_is_branch && !origin)
 			printf(rebasing ?
-			       "Branch %s set up to track local ref %s by rebasing.\n" :
-			       "Branch %s set up to track local ref %s.\n",
+			       _("Branch %s set up to track local ref %s by rebasing.\n") :
+			       _("Branch %s set up to track local ref %s.\n"),
 			       local, remote);
 		else
 			die("BUG: impossible combination of %d and %p",
@@ -115,7 +115,7 @@ static int setup_tracking(const char *new_ref, const char *orig_ref,
 	int config_flags = quiet ? 0 : BRANCH_CONFIG_VERBOSE;
 
 	if (strlen(new_ref) > 1024 - 7 - 7 - 1)
-		return error("Tracking not set up: name too long: %s",
+		return error(_("Tracking not set up: name too long: %s"),
 				new_ref);
 
 	memset(&tracking, 0, sizeof(tracking));
@@ -134,7 +134,7 @@ static int setup_tracking(const char *new_ref, const char *orig_ref,
 		}
 
 	if (tracking.matches > 1)
-		return error("Not tracking: ambiguous information for ref %s",
+		return error(_("Not tracking: ambiguous information for ref %s"),
 				orig_ref);
 
 	install_branch_config(config_flags, new_ref, tracking.remote,
@@ -179,12 +179,12 @@ int validate_new_branchname(const char *name, struct strbuf *ref,
 			    int force, int attr_only)
 {
 	if (strbuf_check_branch_ref(ref, name))
-		die("'%s' is not a valid branch name.", name);
+		die(_("'%s' is not a valid branch name."), name);
 
 	if (!ref_exists(ref->buf))
 		return 0;
 	else if (!force && !attr_only)
-		die("A branch named '%s' already exists.", ref->buf + strlen("refs/heads/"));
+		die(_("A branch named '%s' already exists."), ref->buf + strlen("refs/heads/"));
 
 	if (!attr_only) {
 		const char *head;
@@ -192,7 +192,7 @@ int validate_new_branchname(const char *name, struct strbuf *ref,
 
 		head = resolve_ref_unsafe("HEAD", sha1, 0, NULL);
 		if (!is_bare_repository() && head && !strcmp(head, ref->buf))
-			die("Cannot force update the current branch.");
+			die(_("Cannot force update the current branch."));
 	}
 	return 1;
 }
@@ -247,7 +247,7 @@ void create_branch(const char *head,
 			}
 			die(_(upstream_missing), start_name);
 		}
-		die("Not a valid object name: '%s'.", start_name);
+		die(_("Not a valid object name: '%s'."), start_name);
 	}
 
 	switch (dwim_ref(start_name, strlen(start_name), sha1, &real_ref)) {
@@ -267,18 +267,18 @@ void create_branch(const char *head,
 		}
 		break;
 	default:
-		die("Ambiguous object name: '%s'.", start_name);
+		die(_("Ambiguous object name: '%s'."), start_name);
 		break;
 	}
 
 	if ((commit = lookup_commit_reference(sha1)) == NULL)
-		die("Not a valid branch point: '%s'.", start_name);
+		die(_("Not a valid branch point: '%s'."), start_name);
 	hashcpy(sha1, commit->object.sha1);
 
 	if (!dont_change_ref) {
 		lock = lock_any_ref_for_update(ref.buf, NULL, 0);
 		if (!lock)
-			die_errno("Failed to lock ref for update");
+			die_errno(_("Failed to lock ref for update"));
 	}
 
 	if (reflog)
@@ -296,7 +296,7 @@ void create_branch(const char *head,
 
 	if (!dont_change_ref)
 		if (write_ref_sha1(lock, sha1, msg) < 0)
-			die_errno("Failed to write ref");
+			die_errno(_("Failed to write ref"));
 
 	strbuf_release(&ref);
 	free(real_ref);
-- 
1.8.2.1.350.g7baa3ba

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v2] i18n: branch: mark strings for translation
  2013-04-13 14:08   ` [PATCH v2] " Jiang Xin
@ 2013-04-16  2:40     ` Jonathan Nieder
  2013-04-16  3:37       ` [PATCH v3] " Jiang Xin
  0 siblings, 1 reply; 6+ messages in thread
From: Jonathan Nieder @ 2013-04-16  2:40 UTC (permalink / raw)
  To: Jiang Xin; +Cc: Junio C Hamano, Nguyễn Thái Ngọc Duy, Git List

Jiang Xin wrote:

> --- a/branch.c
> +++ b/branch.c
[...]
> @@ -79,23 +79,23 @@ void install_branch_config(int flag, const char *local, const char *origin, cons
>  	if (flag & BRANCH_CONFIG_VERBOSE) {
>  		if (remote_is_branch && origin)
>  			printf(rebasing ?
> -			       "Branch %s set up to track remote branch %s from %s by rebasing.\n" :
> -			       "Branch %s set up to track remote branch %s from %s.\n",
> +			       _("Branch %s set up to track remote branch %s from %s by rebasing.\n") :
> +			       _("Branch %s set up to track remote branch %s from %s.\n"),

Micronit: it would be nicer to use printf_ln to save translators the
trouble of worrying about the final newline.

With that change,
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>

Thanks.  Here's a patch making that change for squashing in.

diff --git i/branch.c w/branch.c
index 4ddd69f3..c67b97d1 100644
--- i/branch.c
+++ w/branch.c
@@ -78,24 +78,24 @@ void install_branch_config(int flag, const char *local, const char *origin, cons
 
 	if (flag & BRANCH_CONFIG_VERBOSE) {
 		if (remote_is_branch && origin)
-			printf(rebasing ?
-			       _("Branch %s set up to track remote branch %s from %s by rebasing.\n") :
-			       _("Branch %s set up to track remote branch %s from %s.\n"),
+			printf_ln(rebasing ?
+			       _("Branch %s set up to track remote branch %s from %s by rebasing.") :
+			       _("Branch %s set up to track remote branch %s from %s."),
 			       local, shortname, origin);
 		else if (remote_is_branch && !origin)
-			printf(rebasing ?
-			       _("Branch %s set up to track local branch %s by rebasing.\n") :
-			       _("Branch %s set up to track local branch %s.\n"),
+			printf_ln(rebasing ?
+			       _("Branch %s set up to track local branch %s by rebasing.") :
+			       _("Branch %s set up to track local branch %s."),
 			       local, shortname);
 		else if (!remote_is_branch && origin)
-			printf(rebasing ?
-			       _("Branch %s set up to track remote ref %s by rebasing.\n") :
-			       _("Branch %s set up to track remote ref %s.\n"),
+			printf_ln(rebasing ?
+			       _("Branch %s set up to track remote ref %s by rebasing.") :
+			       _("Branch %s set up to track remote ref %s."),
 			       local, remote);
 		else if (!remote_is_branch && !origin)
-			printf(rebasing ?
-			       _("Branch %s set up to track local ref %s by rebasing.\n") :
-			       _("Branch %s set up to track local ref %s.\n"),
+			printf_ln(rebasing ?
+			       _("Branch %s set up to track local ref %s by rebasing.") :
+			       _("Branch %s set up to track local ref %s."),
 			       local, remote);
 		else
 			die("BUG: impossible combination of %d and %p",

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v3] i18n: branch: mark strings for translation
  2013-04-16  2:40     ` Jonathan Nieder
@ 2013-04-16  3:37       ` Jiang Xin
  2013-04-16  4:18         ` Junio C Hamano
  0 siblings, 1 reply; 6+ messages in thread
From: Jiang Xin @ 2013-04-16  3:37 UTC (permalink / raw)
  To: Junio C Hamano, Nguyễn Thái Ngọc Duy,
	Jonathan Nieder
  Cc: Git List, Jiang Xin

Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
Reviewed-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
---
> Micronit: it would be nicer to use printf_ln to save translators the
> trouble of worrying about the final newline.
Reroll with the help of Jonathan Nieder.

 branch.c | 54 +++++++++++++++++++++++++++---------------------------
 1 file changed, 27 insertions(+), 27 deletions(-)

diff --git a/branch.c b/branch.c
index 6ae6a..97c72 100644
--- a/branch.c
+++ b/branch.c
@@ -57,7 +57,7 @@ void install_branch_config(int flag, const char *local, const char *origin, cons
 	if (remote_is_branch
 	    && !strcmp(local, shortname)
 	    && !origin) {
-		warning("Not setting branch %s as its own upstream.",
+		warning(_("Not setting branch %s as its own upstream."),
 			local);
 		return;
 	}
@@ -78,25 +78,25 @@ void install_branch_config(int flag, const char *local, const char *origin, cons
 
 	if (flag & BRANCH_CONFIG_VERBOSE) {
 		if (remote_is_branch && origin)
-			printf(rebasing ?
-			       "Branch %s set up to track remote branch %s from %s by rebasing.\n" :
-			       "Branch %s set up to track remote branch %s from %s.\n",
-			       local, shortname, origin);
+			printf_ln(rebasing ?
+				  _("Branch %s set up to track remote branch %s from %s by rebasing.") :
+				  _("Branch %s set up to track remote branch %s from %s."),
+				  local, shortname, origin);
 		else if (remote_is_branch && !origin)
-			printf(rebasing ?
-			       "Branch %s set up to track local branch %s by rebasing.\n" :
-			       "Branch %s set up to track local branch %s.\n",
-			       local, shortname);
+			printf_ln(rebasing ?
+				  _("Branch %s set up to track local branch %s by rebasing.") :
+				  _("Branch %s set up to track local branch %s."),
+				  local, shortname);
 		else if (!remote_is_branch && origin)
-			printf(rebasing ?
-			       "Branch %s set up to track remote ref %s by rebasing.\n" :
-			       "Branch %s set up to track remote ref %s.\n",
-			       local, remote);
+			printf_ln(rebasing ?
+				  _("Branch %s set up to track remote ref %s by rebasing.") :
+				  _("Branch %s set up to track remote ref %s."),
+				  local, remote);
 		else if (!remote_is_branch && !origin)
-			printf(rebasing ?
-			       "Branch %s set up to track local ref %s by rebasing.\n" :
-			       "Branch %s set up to track local ref %s.\n",
-			       local, remote);
+			printf_ln(rebasing ?
+				  _("Branch %s set up to track local ref %s by rebasing.") :
+				  _("Branch %s set up to track local ref %s."),
+				  local, remote);
 		else
 			die("BUG: impossible combination of %d and %p",
 			    remote_is_branch, origin);
@@ -115,7 +115,7 @@ static int setup_tracking(const char *new_ref, const char *orig_ref,
 	int config_flags = quiet ? 0 : BRANCH_CONFIG_VERBOSE;
 
 	if (strlen(new_ref) > 1024 - 7 - 7 - 1)
-		return error("Tracking not set up: name too long: %s",
+		return error(_("Tracking not set up: name too long: %s"),
 				new_ref);
 
 	memset(&tracking, 0, sizeof(tracking));
@@ -134,7 +134,7 @@ static int setup_tracking(const char *new_ref, const char *orig_ref,
 		}
 
 	if (tracking.matches > 1)
-		return error("Not tracking: ambiguous information for ref %s",
+		return error(_("Not tracking: ambiguous information for ref %s"),
 				orig_ref);
 
 	install_branch_config(config_flags, new_ref, tracking.remote,
@@ -179,12 +179,12 @@ int validate_new_branchname(const char *name, struct strbuf *ref,
 			    int force, int attr_only)
 {
 	if (strbuf_check_branch_ref(ref, name))
-		die("'%s' is not a valid branch name.", name);
+		die(_("'%s' is not a valid branch name."), name);
 
 	if (!ref_exists(ref->buf))
 		return 0;
 	else if (!force && !attr_only)
-		die("A branch named '%s' already exists.", ref->buf + strlen("refs/heads/"));
+		die(_("A branch named '%s' already exists."), ref->buf + strlen("refs/heads/"));
 
 	if (!attr_only) {
 		const char *head;
@@ -192,7 +192,7 @@ int validate_new_branchname(const char *name, struct strbuf *ref,
 
 		head = resolve_ref_unsafe("HEAD", sha1, 0, NULL);
 		if (!is_bare_repository() && head && !strcmp(head, ref->buf))
-			die("Cannot force update the current branch.");
+			die(_("Cannot force update the current branch."));
 	}
 	return 1;
 }
@@ -247,7 +247,7 @@ void create_branch(const char *head,
 			}
 			die(_(upstream_missing), start_name);
 		}
-		die("Not a valid object name: '%s'.", start_name);
+		die(_("Not a valid object name: '%s'."), start_name);
 	}
 
 	switch (dwim_ref(start_name, strlen(start_name), sha1, &real_ref)) {
@@ -267,18 +267,18 @@ void create_branch(const char *head,
 		}
 		break;
 	default:
-		die("Ambiguous object name: '%s'.", start_name);
+		die(_("Ambiguous object name: '%s'."), start_name);
 		break;
 	}
 
 	if ((commit = lookup_commit_reference(sha1)) == NULL)
-		die("Not a valid branch point: '%s'.", start_name);
+		die(_("Not a valid branch point: '%s'."), start_name);
 	hashcpy(sha1, commit->object.sha1);
 
 	if (!dont_change_ref) {
 		lock = lock_any_ref_for_update(ref.buf, NULL, 0);
 		if (!lock)
-			die_errno("Failed to lock ref for update");
+			die_errno(_("Failed to lock ref for update"));
 	}
 
 	if (reflog)
@@ -296,7 +296,7 @@ void create_branch(const char *head,
 
 	if (!dont_change_ref)
 		if (write_ref_sha1(lock, sha1, msg) < 0)
-			die_errno("Failed to write ref");
+			die_errno(_("Failed to write ref"));
 
 	strbuf_release(&ref);
 	free(real_ref);
-- 
1.8.2.1.350.gd29561d

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v3] i18n: branch: mark strings for translation
  2013-04-16  3:37       ` [PATCH v3] " Jiang Xin
@ 2013-04-16  4:18         ` Junio C Hamano
  0 siblings, 0 replies; 6+ messages in thread
From: Junio C Hamano @ 2013-04-16  4:18 UTC (permalink / raw)
  To: Jiang Xin
  Cc: Nguyễn Thái Ngọc Duy, Jonathan Nieder, Git List

Thanks, both.  Will replace what is queued with this version.

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-04-16  4:18 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-13  2:22 [PATCH] i18n: branch: mark strings for translation Jiang Xin
2013-04-13  4:29 ` Duy Nguyen
2013-04-13 14:08   ` [PATCH v2] " Jiang Xin
2013-04-16  2:40     ` Jonathan Nieder
2013-04-16  3:37       ` [PATCH v3] " Jiang Xin
2013-04-16  4:18         ` Junio C Hamano

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 NNTP newsgroup(s).