l10n: mark message helpers prefix for translation.
PATCH 1/1 l10n: mark message helpers prefix for translation.
From: Dimitriy Ryazantcev <[email protected]>
Some messages prefixed like 'usage:'/'fatal:'/'warning:'/'error:' were not translated.
---
l10n: mark message helpers prefix for translation.
Some messages prefixes like 'usage:'/'fatal:'/'warning:'/'error:' were not translated.
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1279%2FDJm00n%2Fl10n-fixes-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1279/DJm00n/l10n-fixes-v1
Pull-Request: https://github.com/git/git/pull/1279
usage.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
usage.c +4 -4
@@ -33,7 +33,7 @@ static void vreportf(const char *prefix, const char *err, va_list params) static NORETURN void usage_builtin(const char *err, va_list params) { -vreportf ("usage: " , err, params); +vreportf (_ ("usage: " ), err, params);/* * When we detect a usage error *before* the command dispatch in
@@ -58,7 +58,7 @@ static NORETURN void usage_builtin(const char *err, va_list params)static void die_message_builtin (const char *err,va_list params) {trace2_cmd_error_va (err, params); -vreportf ("fatal: " , err, params); +vreportf (_ ("fatal: " ), err, params); }/*
@@ -78,14 +78,14 @@ static void error_builtin(const char *err, va_list params) {trace2_cmd_error_va (err, params); -vreportf ("error: " , err, params); +vreportf (_ ("error: " ), err, params); }static void warn_builtin (const char *warn,va_list params) {trace2_cmd_error_va (warn, params); -vreportf ("warning: " , warn, params); +vreportf (_ ("warning: " ), warn, params); }static int die_is_recursing_builtin (void )
base-commit: 5b71c59bc3b9365075e2a175aa7b6f2b0c84ce44
Signature · 1 line
gitgitgadget
PATCH v2 1/1 i18n: mark message helpers prefix for translation
From: Dimitriy Ryazantcev <[email protected]>
Some messages prefixes like 'usage:'/'fatal:'/'warning:'/'error:' were not translated.
---
i18n: mark message helpers prefix for translation
Some messages prefixes like 'usage:'/'fatal:'/'warning:'/'error:' were not translated.
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1279%2FDJm00n%2Fl10n-fixes-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1279/DJm00n/l10n-fixes-v2
Pull-Request: https://github.com/git/git/pull/1279
Range-diff vs v1:
1: efcf217b361 ! 1: 6f389468631 l10n: mark message helpers prefix for translation.
@@ Metadata
Author: Dimitriy Ryazantcev <[email protected]>
## Commit message ##
- l10n: mark message helpers prefix for translation.
+ i18n: mark message helpers prefix for translation
- Some messages prefixed like 'usage:'/'fatal:'/'warning:'/'error:'
+ Some messages prefixes like 'usage:'/'fatal:'/'warning:'/'error:'
were not translated.
usage.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
usage.c +4 -4
@@ -33,7 +33,7 @@ static void vreportf(const char *prefix, const char *err, va_list params) static NORETURN void usage_builtin(const char *err, va_list params) { -vreportf ("usage: " , err, params); +vreportf (_ ("usage: " ), err, params);/* * When we detect a usage error *before* the command dispatch in
@@ -58,7 +58,7 @@ static NORETURN void usage_builtin(const char *err, va_list params)static void die_message_builtin (const char *err,va_list params) {trace2_cmd_error_va (err, params); -vreportf ("fatal: " , err, params); +vreportf (_ ("fatal: " ), err, params); }/*
@@ -78,14 +78,14 @@ static void error_builtin(const char *err, va_list params) {trace2_cmd_error_va (err, params); -vreportf ("error: " , err, params); +vreportf (_ ("error: " ), err, params); }static void warn_builtin (const char *warn,va_list params) {trace2_cmd_error_va (warn, params); -vreportf ("warning: " , warn, params); +vreportf (_ ("warning: " ), warn, params); }static int die_is_recursing_builtin (void )
base-commit: 5b71c59bc3b9365075e2a175aa7b6f2b0c84ce44
Signature · 1 line
gitgitgadget
Re: [PATCH v2] i18n: mark message helpers prefix for translation
Quoted 65 lines · Dimitriy Ryazantcev via GitGitGadget
From: Dimitriy Ryazantcev <[email protected]>
Some messages prefixes like 'usage:'/'fatal:'/'warning:'/'error:' were not translated.
Signed-off-by Dimiytriy Ryazantcev <[email protected]>---
i18n: mark message helpers prefix for translationSome messages prefixes like 'usage:'/'fatal:'/'warning:'/'error:' were not translated.
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1279%2FDJm00n%2Fl10n-fixes-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1279/DJm00n/l10n-fixes-v2
Pull-Request: https://github.com/git/git/pull/1279Range-diff vs v1:
1:
efcf217b361! 1:6f389468631l10n: mark message helpers prefix for translation.
@@ Metadata
Author: Dimitriy Ryazantcev <[email protected]>## Commit message ##
- l10n: mark message helpers prefix for translation.
+ i18n: mark message helpers prefix for translation- Some messages prefixed like 'usage:'/'fatal:'/'warning:'/'error:'
+ Some messages prefixes like 'usage:'/'fatal:'/'warning:'/'error:'
were not translated.Signed-off-by Dimiytriy Ryazantcev <[email protected]>usage.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)usage.c +3
-3@@ -33,7 +33,7 @@ static void vreportf(const char *prefix, const char *err, va_list params) static NORETURN void usage_builtin(const char *err, va_list params) { -vreportf ("usage: " , err, params); +vreportf (_ ("usage: " ), err, params);/* * When we detect a usage error *before* the command dispatch in @@ -58,7 +58,7 @@ static NORETURN void usage_builtin(const char *err, va_list params)static void die_message_builtin (const char *err,va_list params) {trace2_cmd_error_va (err, params); -vreportf ("fatal: " , err, params); +vreportf (_ ("fatal: " ), err, params); }/* @@ -78,14 +78,14 @@ static void error_builtin(const char *err, va_list params) {trace2_cmd_error_va (err, params); -vreportf ("error: " , err, params); +vreportf (_ ("error: " ), err, params); }
usage.c static void error_builtin(const char *err, va_list params) · line 91
Quoted 10 lines
usage.c +1
-1static void warn_builtin (const char *warn,va_list params) {trace2_cmd_error_va (warn, params); -vreportf ("warning: " , warn, params); +vreportf (_ ("warning: " ), warn, params); }static int die_is_recursing_builtin (void )
I posted this patch[1] to do the same a while ago, except it also translates the "BUG: " message:
https://lore.kernel.org/git/[email protected]/;
I was meaning to submit it sometime soon, one thing it depended on was the recently merged ab/bug-if-bug series (4da14b574f2 (Merge branch 'ab/bug-if-bug', 2022-06-10)).
It's more complex because it's handling the "BUG: " case, and was part of a more general change to allow us to emit file & line numbers (as with "BUG: ") for these usage/fatal/error/warning messages.
That being said I don't mind this smaller change going in first, but it's perhaps worth noting that you're explicitly omitting one "message helper" variant (BUG), and that unlike for most i18n messages this one uses "lego", i.e. forces the message order to be LTR, so we'll still need to further adjust this for RTL languages (the same is the case with my patch).
Re: [PATCH v2] i18n: mark message helpers prefix for translation
Quoted 2 lines · Ævar Arnfjörð Bjarmason
I posted this patch[1] to do the same a while ago, except it also translates the "BUG: " message:
We should take this one, exactly because it does not touch BUG(); the messages given to BUG() are not marked for translation, and translating only the "BUG:" prefix does not make much sense.
When BUG messages are shown, it is better if they are conveyed back to us exactly. It would be cumbersome to near-impossible, depending on the language, if a message was given back to me in a script that I do not even know how to type---I'd need to map it back via po/* files with "grep" to locate where the message came from.
Besides, BUG messages are meant not to be seen. We could discuss if it makes more sense to translate the messages and spend engineering resource to mark them with _() while massaging the messages to help deduping, but because the messages are meant primarily for identifying the locations and not explaining situation to human user, I do not see a huge benefit doing so.
Thanks.
Re: [PATCH v2] i18n: mark message helpers prefix for translation
Quoted 15 lines · Junio C Hamano
Quoted 2 lines · Ævar Arnfjörð Bjarmason
I posted this patch[1] to do the same a while ago, except it also translates the "BUG: " message:
We should take this one, exactly because it does not touch
BUG(); the messages given toBUG()are not marked for translation, and translating only the "BUG:" prefix does not make much sense.When BUG messages are shown, it is better if they are conveyed back to us exactly. It would be cumbersome to near-impossible, depending on the language, if a message was given back to me in a script that I do not even know how to type---I'd need to map it back via po/* files with "grep" to locate where the message came from.
Quoted 6 lines
Besides, BUG messages are meant not to be seen. We could discuss if it makes more sense to translate the messages and spend engineering resource to mark them with
_()while massaging the messages to help deduping, but because the messages are meant primarily for identifying the locations and not explaining situation to human user, I do not see a huge benefit doing so.
I think this smaller change is fine, I was attempting to summarize the difference in the approaches, and note that it would be useful if the commit message communicated some of what you're pointing out here.
The change I have didn't translate the *content* of bug messages (which we'd need to mark for translation, but we shouldn't do that), just the "BUG: " prefix, and we'd still leave the file/line number in place.
It's probably going overboard, but it seemed harmless enough, and might help us get reports we otherwise wouldn't see, as someone who doesn't speak any English would get the hint.
I realize that git's userbase is fairly technical, and if you're finding a bug in git you're likely to have some *basic* knowledge of English.
But I think it's good translation practice to not assume that, and to make the software inviting to people who speak about as much English as I speak Chinese, i.e. none.
If I was using software originally written in Chinese that had *.po translations in a language I understood I'd be thoroughly confused if one day it would tell me:
昆虫 git.c:123:晦涩难懂的问题
Which I don't even understand one letter of, and I have no idea if it's grammatically correct. It's just what I get from Google translate if I ask it to translate "insect: obscure problem".
I'd probably try to copy/paste at least "昆虫", and get an even more puzzling mention of "insect". Which is what many such users would be likely to get if they were trying to find out what our "BUG" means, the idiom of "[a] software bug" is jargon that would translate especially badly.
So, wouldn't that be more helpful if I'd at least get:
INTERNAL SOFTWARE ERROR git.c:123:晦涩难懂的问题
So that was the idea.
I know it's an uphill battle sometimes to convince people that there are
a) monolinguals that b) use complex software and c) whose native language isn't the one we use on this ML. But these people do in fact exist, and in quite large numbers I might add :)
I think our i18n effort should aim to target that lowest common denominator, there's other lower hanging fruit, but since we were on the subject...
Quoted 9 lines · Dimitriy Ryazantcev via GitGitGadget
From: Dimitriy Ryazantcev <[email protected]>
Some messages prefixed like 'usage:'/'fatal:'/'warning:'/'error:' were not translated.
Signed-off-by Dimiytriy Ryazantcev <[email protected]>---
l10n: mark message helpers prefix for translation.
1. The prefix of the subject should be "i18n", because your are marking strings for translation.
2. The subject line should not end with a period.
Quoted 6 lines
Some messages prefixes like 'usage:'/'fatal:'/'warning:'/'error:' were not translated.
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1279%2FDJm00n%2Fl10n-fixes-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1279/DJm00n/l10n-fixes-v1
Pull-Request: https://github.com/git/git/pull/1279