{"thread":{"id":"37498","subject":"[PATCH 2/2] i18n translate builtin warning, error, usage, fatal messages","startedAt":"2014-09-05T18:57:23Z","lastAt":"2014-09-05T19:47:42Z","messageCount":4,"participants":["Sandy Carter","Junio C Hamano"],"isPatch":true,"patchVersion":1,"patchTotal":2},"messages":[{"id":"248906","messageId":"1409943445-12283-1-git-send-email-sandy.carter@savoirfairelinux.com","threadId":"37498","inReplyTo":null,"subject":"[PATCH 0/2] Translations for ambiguous refname warning","fromName":"Sandy Carter","fromEmail":"sandy.carter@savoirfairelinux.com","sentAt":"2014-09-05T18:57:23Z","receivedAt":"2014-09-05T18:57:23Z","isPatch":true,"sender":{"key":"sandy.carter@savoirfairelinux.com","avatar":"https://gravatar.com/avatar/f7200eeb1d898456afeba0045b3db9fc44992c1a1472c467883d32528048cd3e?d=mp&s=160"},"body":"Here is a pair of commit which allow messages from git to be translated when\nrunning an ambiguous checkout such as when a branch name and a tag name are the\nsame.\n\n\nSandy Carter (2):\n  i18n: ambiguous refname message is not translated\n  i18n translate builtin warning, error, usage, fatal messages\n\n sha1_name.c | 6 +++---\n usage.c     | 8 ++++----\n 2 files changed, 7 insertions(+), 7 deletions(-)\n"},{"id":"248905","messageId":"1409943445-12283-2-git-send-email-sandy.carter@savoirfairelinux.com","threadId":"37498","inReplyTo":"1409943445-12283-1-git-send-email-sandy.carter@savoirfairelinux.com","subject":"[PATCH 1/2] i18n: ambiguous refname message is not translated","fromName":"Sandy Carter","fromEmail":"sandy.carter@savoirfairelinux.com","sentAt":"2014-09-05T18:57:24Z","receivedAt":"2014-09-05T18:57:24Z","isPatch":true,"sender":{"key":"sandy.carter@savoirfairelinux.com","avatar":"https://gravatar.com/avatar/f7200eeb1d898456afeba0045b3db9fc44992c1a1472c467883d32528048cd3e?d=mp&s=160"},"body":"Allow warning message about ambuiguous refname to be exported to .pot files\nwhen checking out a refname which is the name of a tag and of a branch for\nexample.\n\nSigned-off-by: Sandy Carter <sandy.carter@savoirfairelinux.com>\n---\n sha1_name.c | 6 +++---\n 1 file changed, 3 insertions(+), 3 deletions(-)\n\ndiff --git a/sha1_name.c b/sha1_name.c\nindex 63ee66f..6571287 100644\n--- a/sha1_name.c\n+++ b/sha1_name.c\n@@ -434,7 +434,7 @@ static int interpret_nth_prior_checkout(const char *name, int namelen, struct st\n \n static int get_sha1_basic(const char *str, int len, unsigned char *sha1)\n {\n-\tstatic const char *warn_msg = \"refname '%.*s' is ambiguous.\";\n+\tstatic const char *warn_msg = N_(\"refname '%.*s' is ambiguous.\");\n \tstatic const char *object_name_msg = N_(\n \t\"Git normally never creates a ref that ends with 40 hex characters\\n\"\n \t\"because it will be ignored when you just specify 40-hex. These refs\\n\"\n@@ -454,7 +454,7 @@ static int get_sha1_basic(const char *str, int len, unsigned char *sha1)\n \t\tif (warn_ambiguous_refs && warn_on_object_refname_ambiguity) {\n \t\t\trefs_found = dwim_ref(str, len, tmp_sha1, &real_ref);\n \t\t\tif (refs_found > 0) {\n-\t\t\t\twarning(warn_msg, len, str);\n+\t\t\t\twarning(_(warn_msg), len, str);\n \t\t\t\tif (advice_object_name_warning)\n \t\t\t\t\tfprintf(stderr, \"%s\\n\", _(object_name_msg));\n \t\t\t}\n@@ -514,7 +514,7 @@ static int get_sha1_basic(const char *str, int len, unsigned char *sha1)\n \tif (warn_ambiguous_refs &&\n \t    (refs_found > 1 ||\n \t     !get_short_sha1(str, len, tmp_sha1, GET_SHA1_QUIETLY)))\n-\t\twarning(warn_msg, len, str);\n+\t\twarning(_(warn_msg), len, str);\n \n \tif (reflog_len) {\n \t\tint nth, i;\n-- \n2.1.0\n"},{"id":"248904","messageId":"1409943445-12283-3-git-send-email-sandy.carter@savoirfairelinux.com","threadId":"37498","inReplyTo":"1409943445-12283-1-git-send-email-sandy.carter@savoirfairelinux.com","subject":"[PATCH 2/2] i18n translate builtin warning, error, usage, fatal messages","fromName":"Sandy Carter","fromEmail":"sandy.carter@savoirfairelinux.com","sentAt":"2014-09-05T18:57:25Z","receivedAt":"2014-09-05T18:57:25Z","isPatch":true,"sender":{"key":"sandy.carter@savoirfairelinux.com","avatar":"https://gravatar.com/avatar/f7200eeb1d898456afeba0045b3db9fc44992c1a1472c467883d32528048cd3e?d=mp&s=160"},"body":"Allow warnings, errors, usage and fatal messages to be translated to user\nwhen checking out a ambiguous refname for example\n\nSigned-off-by: Sandy Carter <sandy.carter@savoirfairelinux.com>\n---\n usage.c | 8 ++++----\n 1 file changed, 4 insertions(+), 4 deletions(-)\n\ndiff --git a/usage.c b/usage.c\nindex ed14645..24a450e 100644\n--- a/usage.c\n+++ b/usage.c\n@@ -27,24 +27,24 @@ void vwritef(int fd, const char *prefix, const char *err, va_list params)\n \n static NORETURN void usage_builtin(const char *err, va_list params)\n {\n-\tvreportf(\"usage: \", err, params);\n+\tvreportf(_(\"usage: \"), err, params);\n \texit(129);\n }\n \n static NORETURN void die_builtin(const char *err, va_list params)\n {\n-\tvreportf(\"fatal: \", err, params);\n+\tvreportf(_(\"fatal: \"), err, params);\n \texit(128);\n }\n \n static void error_builtin(const char *err, va_list params)\n {\n-\tvreportf(\"error: \", err, params);\n+\tvreportf(_(\"error: \"), err, params);\n }\n \n static void warn_builtin(const char *warn, va_list params)\n {\n-\tvreportf(\"warning: \", warn, params);\n+\tvreportf(_(\"warning: \"), warn, params);\n }\n \n static int die_is_recursing_builtin(void)\n-- \n2.1.0\n"},{"id":"248907","messageId":"xmqq4mwlrgrl.fsf@gitster.dls.corp.google.com","threadId":"37498","inReplyTo":"1409943445-12283-3-git-send-email-sandy.carter@savoirfairelinux.com","subject":"Re: [PATCH 2/2] i18n translate builtin warning, error, usage, fatal messages","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2014-09-05T19:47:42Z","receivedAt":"2014-09-05T19:47:42Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Sandy Carter <sandy.carter@savoirfairelinux.com> writes:\n\n> Allow warnings, errors, usage and fatal messages to be translated to user\n> when checking out a ambiguous refname for example\n>\n> Signed-off-by: Sandy Carter <sandy.carter@savoirfairelinux.com>\n> ---\n\nHmmmm.  Doesn't this break the plumbing commands whose messages are\nmeant to be matched and interpreted by scripts?\n\n>  usage.c | 8 ++++----\n>  1 file changed, 4 insertions(+), 4 deletions(-)\n>\n> diff --git a/usage.c b/usage.c\n> index ed14645..24a450e 100644\n> --- a/usage.c\n> +++ b/usage.c\n> @@ -27,24 +27,24 @@ void vwritef(int fd, const char *prefix, const char *err, va_list params)\n>  \n>  static NORETURN void usage_builtin(const char *err, va_list params)\n>  {\n> -\tvreportf(\"usage: \", err, params);\n> +\tvreportf(_(\"usage: \"), err, params);\n>  \texit(129);\n>  }\n>  \n>  static NORETURN void die_builtin(const char *err, va_list params)\n>  {\n> -\tvreportf(\"fatal: \", err, params);\n> +\tvreportf(_(\"fatal: \"), err, params);\n>  \texit(128);\n>  }\n>  \n>  static void error_builtin(const char *err, va_list params)\n>  {\n> -\tvreportf(\"error: \", err, params);\n> +\tvreportf(_(\"error: \"), err, params);\n>  }\n>  \n>  static void warn_builtin(const char *warn, va_list params)\n>  {\n> -\tvreportf(\"warning: \", warn, params);\n> +\tvreportf(_(\"warning: \"), warn, params);\n>  }\n>  \n>  static int die_is_recursing_builtin(void)\n"}]}