Skip to contentSkip to conversation

diff and apply: fix singular/plural grammar nit.

PATCH In review David Ripton 4 participants 4 messages Jun 15, 2016

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 diff and apply: fix singular/plural grammar nit.

Remove the trailing 's' from "files", "insertions", and "deletions" when there is only one of the item.

---
 builtin/apply.c |    5 ++++-
 diff.c          |   13 +++++++++----
 2 files changed, 13 insertions(+), 5 deletions(-)
builtin/apply.c +4 -1
index 84a8a0b..47bbc23 100644
@@ -3244,7 +3244,10 @@ static void stat_patch_list(struct patch *patch)
                show_stats(patch);
        }
 
-       printf(" %d files changed, %d insertions(+), %d deletions(-)\n", files, adds, dels);
+       printf(" %d file%s changed, %d insertion%s(+), %d deletion%s(-)\n",
+              files, (files == 1 ? "" : "s"),
+              adds, (adds == 1 ? "" : "s"),
+              dels, (dels == 1 ? "" : "s"));
 }
 
 static void numstat_patch_list(struct patch *patch)
diff.c +4 -2
index 374ecf3..531dcb1 100644
@@ -1467,8 +1467,10 @@ static void show_stats(struct diffstat_t *data, struct diff_options *options)
        }
        fprintf(options->file, "%s", line_prefix);
        fprintf(options->file,
-              " %d files changed, %d insertions(+), %d deletions(-)\n",
-              total_files, adds, dels);
+              " %d file%s changed, %d insertion%s(+), %d deletion%s(-)\n",
+              total_files, (total_files == 1 ? "" : "s"),
+              adds, (adds == 1 ? "" : "s"),
+              dels, (dels == 1 ? "" : "s"));
 }
 
 static void show_shortstats(struct diffstat_t *data, struct 

diff_options *options)
@@ -1498,8 +1500,11 @@ static void show_shortstats(struct diffstat_t *data, struct diff_options *option

                                options->output_prefix_data);
                fprintf(options->file, "%s", msg->buf);
        }
-       fprintf(options->file, " %d files changed, %d insertions(+), %d deletions(-)\n",
-              total_files, adds, dels);
+       fprintf(options->file,
+               " %d file%s changed, %d insertion%s(+), %d deletion%s(-)\n",
+               total_files, (total_files == 1 ? "" : "s"),
+               adds, (adds == 1 ? "" : "s"),
+               dels, (dels == 1 ? "" : "s"));

}

static void show_numstat(struct diffstat_t *data, struct diff_options
*options)

Signature · 4 lines
1.7.8.rc3

-- 
David Ripton    [email protected]
#1 lore raw
Quoted 5 lines · David Ripton

Remove the trailing 's' from "files", "insertions", and "deletions" when there is only one of the item.

---

[...]

Quoted 2 lines

- printf(" %d files changed, %d insertions(+), %d
deletions(-)\n", files, adds, dels);

Whitespace damaged. Please turn off word wrapping (limiting line width) when sending patches.

builtin/apply.c static void stat_patch_list(struct patch *patch) · line 3251

Quoted 5 lines
builtin/apply.c +4 -0
+       printf(" %d file%s changed, %d insertion%s(+), %d deletion%s(-)\n",
+              files, (files == 1 ? "" : "s"),
+              adds, (adds == 1 ? "" : "s"),
+              dels, (dels == 1 ? "" : "s"));
  }

First, I think this is an API / plumbing and should not be changed. But I might be mistaken about that.

Second, it is a perfect example ho to *not* handle plural form in the presence of internationalization (i18n) efforts. See e.g.

http://www.gnu.org/s/hello/manual/gettext/Plural-forms.html

Signature · 1 line
Jakub Narębski
#2 lore raw
Quoted 14 lines · Jakub Narebski
Quoted 5 lines · David Ripton

Remove the trailing 's' from "files", "insertions", and "deletions" when there is only one of the item.

---

[...]

Quoted 2 lines

- printf(" %d files changed, %d insertions(+), %d
deletions(-)\n", files, adds, dels);

Whitespace damaged. Please turn off word wrapping (limiting line width) when sending patches.

Quoted 8 lines

builtin/apply.c static void stat_patch_list(struct patch *patch) · line 3251

Quoted 5 lines
builtin/apply.c +4 -0
+       printf(" %d file%s changed, %d insertion%s(+), %d deletion%s(-)\n",
+              files, (files == 1 ? "" : "s"),
+              adds, (adds == 1 ? "" : "s"),
+              dels, (dels == 1 ? "" : "s"));
  }

First, I think this is an API / plumbing and should not be changed. But I might be mistaken about that.

I think somebody already tried to do this not too long ago (don't know if there as a patch) but the diffstat tool always uses the plural, and it might break scripts.

cmn