Re: [PATCH] i18n: Not add stripped contents for translation
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Mar 5, 2012, 02:27 UTC
- Message-ID
- <7v7gyz7pei.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <1330910494-17216-1-git-send-email-worldhello.net@gmail.com>
Jiang Xin <worldhello.net@gmail.com> writes:
Show 9 quoted lines
> The last two chars of the concatenate str from the i18n marked strings
> (", ") will be stripped out by strbuf_setlen.
>
> before: "new commits, modified content, "
> end: "new commits, modified content"
>
> If the translations won't end with COMMA+SPACE, will break the integrity
> of the concatenate string. As for Chinese, COMMA+SPACE may translated to
> "," -- a 3-byte UTF-8 Chinese comma character.Hmph. Why would that be a bad thing in the first place? For example, for the diff.c::print_stat_summary() message, you have this translation:
> 1 个文件被修改,插入 3 行(+),删除 3 行(-)
where the original would be:
%d file changed, %d insertions(+), %d deletions(-).
and I would imagine that it entirely is plausible if a native reader would wish to read a Japanese translation like this:
1個のファイルを変更、挿入 3 行(+)、削除 3 行(-)
without using ASCII comma, but using "、" instead.
Show 19 quoted lines
> diff --git a/wt-status.c b/wt-status.c
> index 9ffc535..0042dbc 100644
> --- a/wt-status.c
> +++ b/wt-status.c
> @@ -245,11 +245,11 @@ static void wt_status_print_change_data(struct wt_status *s,
> if (d->new_submodule_commits || d->dirty_submodule) {
> strbuf_addstr(&extra, " (");
> if (d->new_submodule_commits)
> - strbuf_addf(&extra, _("new commits, "));
> + strbuf_addf(&extra, "%s, ", _("new commits"));
> if (d->dirty_submodule & DIRTY_SUBMODULE_MODIFIED)
> - strbuf_addf(&extra, _("modified content, "));
> + strbuf_addf(&extra, "%s, ", _("modified content"));
> if (d->dirty_submodule & DIRTY_SUBMODULE_UNTRACKED)
> - strbuf_addf(&extra, _("untracked content, "));
> + strbuf_addf(&extra, "%s, ", _("untracked content"));
> strbuf_setlen(&extra, extra.len - 2);
> strbuf_addch(&extra, ')');
> }