Re: Feature Request - Better i18n support
Hello,
How does the below diff look:
diff --git a/apply.c b/apply.c
index 6212ab3..3e1d08d 100644
--- a/apply.c
+++ b/apply.c
@@ -4247,11 +4247,11 @@ static void show_rename_copy(struct patch *p)
* new_name through the end of names are renames
*/
if (old_name != p->old_name)
- printf(" %s %.*s{%s => %s} (%d%%)\n", renamecopy,
+ printf(_(" %s %.*s{%s => %s} (%d%%)\n"), renamecopy,
(int)(old_name - p->old_name), p->old_name,
old_name, new_name, p->score);
else
- printf(" %s %s => %s (%d%%)\n", renamecopy,
+ printf(_(" %s %s => %s (%d%%)\n"), renamecopy,
p->old_name, p->new_name, p->score);
show_mode_change(p, 0);
}
@@ -4270,8 +4270,8 @@ static void summary_patch_list(struct patch *patch)
show_rename_copy(p);
else {
if (p->score) {
- printf(" rewrite %s (%d%%)\n",
- p->new_name, p->score);
+ printf(" rewrite %s ", p->new_name);
+ printf(_("(%d%%)\n"), p->score);
show_mode_change(p, 0);
}
else
diff --git a/progress.c b/progress.c
index f695798..1f8d372 100644
--- a/progress.c
+++ b/progress.c
@@ -124,10 +124,24 @@ static void display(struct progress *progress, uint64_t n, const char *done)
progress->last_percent = percent;
strbuf_reset(counters_sb);
- strbuf_addf(counters_sb,
- "%3u%% (%"PRIuMAX"/%"PRIuMAX")%s", percent,
+
+ struct strbuf progress_sb = STRBUF_INIT;
+ strbuf_addf(&progress_sb,
+ _("%u%% (%"PRIuMAX"/%"PRIuMAX")%s"), percent,
(uintmax_t)n, (uintmax_t)progress->total,
tp);
+ struct strbuf progress_str = STRBUF_INIT;
+ strbuf_addstr(&progress_str, progress_sb.buf);
+ strbuf_release(&progress_sb);
+
+ if (percent < 10)
+ strbuf_insert(&progress_str, 0, " ", 2);
+ else if (percent < 100)
+ strbuf_insert(&progress_str, 0, " ", 1);
+
+ strbuf_addf(counters_sb, "%s", progress_str.buf);
+ strbuf_release(&progress_str);
+
show_update = 1;
}
} else if (progress_update) {
I’ve left diff.c out, since there are no accompanying localised strings to my knowledge. If this looks good, then only remaining thing to tackle would be localised decimal separators I think.
Best regards,
Emir (𐰽𐰺𐰍)
** E-mail needs to stay simple
** Use plain text e-mail