Skip to content

Commit

Permalink
status: disable translation when --porcelain is used
Browse files Browse the repository at this point in the history
"git status --branch --porcelain" displays the status of the branch
(ahead, behind, gone), and used gettext to translate the string.

Use hardcoded strings when --porcelain is used, but keep the gettext
translation for "git status --short" which is essentially the same, but
meant to be read by a human.

Reported-by: Anarky <ghostanarky@gmail.com>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Matthieu Moy authored and Junio C Hamano committed Mar 26, 2014
1 parent 7bbc4e8 commit 7a76c28
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 5 deletions.
13 changes: 8 additions & 5 deletions wt-status.c
Original file line number Diff line number Diff line change
Expand Up @@ -1483,19 +1483,21 @@ static void wt_shortstatus_print_tracking(struct wt_status *s)
return;
}

#define LABEL(string) (s->no_gettext ? (string) : _(string))

color_fprintf(s->fp, header_color, " [");
if (upstream_is_gone) {
color_fprintf(s->fp, header_color, _("gone"));
color_fprintf(s->fp, header_color, LABEL(N_("gone")));
} else if (!num_ours) {
color_fprintf(s->fp, header_color, _("behind "));
color_fprintf(s->fp, header_color, LABEL(N_("behind ")));
color_fprintf(s->fp, branch_color_remote, "%d", num_theirs);
} else if (!num_theirs) {
color_fprintf(s->fp, header_color, _("ahead "));
color_fprintf(s->fp, header_color, LABEL(N_(("ahead "))));
color_fprintf(s->fp, branch_color_local, "%d", num_ours);
} else {
color_fprintf(s->fp, header_color, _("ahead "));
color_fprintf(s->fp, header_color, LABEL(N_(("ahead "))));
color_fprintf(s->fp, branch_color_local, "%d", num_ours);
color_fprintf(s->fp, header_color, _(", behind "));
color_fprintf(s->fp, header_color, ", %s", LABEL(N_("behind ")));
color_fprintf(s->fp, branch_color_remote, "%d", num_theirs);
}

Expand Down Expand Up @@ -1540,5 +1542,6 @@ void wt_porcelain_print(struct wt_status *s)
s->use_color = 0;
s->relative_paths = 0;
s->prefix = NULL;
s->no_gettext = 1;
wt_shortstatus_print(s);
}
1 change: 1 addition & 0 deletions wt-status.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ struct wt_status {
enum commit_whence whence;
int nowarn;
int use_color;
int no_gettext;
int display_comment_prefix;
int relative_paths;
int submodule_summary;
Expand Down

0 comments on commit 7a76c28

Please sign in to comment.