bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 0/2] gitlog-to-changelog output adjustments


From: Jim Meyering
Subject: Re: [PATCH 0/2] gitlog-to-changelog output adjustments
Date: Mon, 31 Oct 2011 08:56:44 +0100

Dmitry V. Levin wrote:
...
> Subject: [PATCH] gitlog-to-changelog: new option --append-dot
>
> * build-aux/gitlog-to-changelog: New option --append-dot, makes the
> first non-blank line of each commit message terminated with a dot.
> ---
>  ChangeLog                     |    6 ++++++
>  build-aux/gitlog-to-changelog |   15 +++++++++++++++
>  2 files changed, 21 insertions(+), 0 deletions(-)
>
> diff --git a/ChangeLog b/ChangeLog
> index 30cc2af..76d1c64 100644
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1,3 +1,9 @@
> +2011-10-30  Dmitry V. Levin  <address@hidden>
> +
> +     gitlog-to-changelog: new option --append-dot.
> +     * build-aux/gitlog-to-changelog: New option --append-dot, makes the
> +     first non-blank line of each commit message terminated with a dot.
> +
>  2011-10-29  Dmitry V. Levin  <address@hidden>
>
>       gitlog-to-changelog: treat a message with only blank lines as empty.
> diff --git a/build-aux/gitlog-to-changelog b/build-aux/gitlog-to-changelog
> index a5fd80d..c6e91c3 100755
> --- a/build-aux/gitlog-to-changelog
> +++ b/build-aux/gitlog-to-changelog
> @@ -65,6 +65,8 @@ OPTIONS:
>     --format=FMT set format string for commit subject and body;
>                    see 'man git-log' for the list of format metacharacters;
>                    the default is '%s%n%b%n'
> +   --append-dot append a dot to the first line of each commit message if
> +                  there is no other punctuation or a blank symbol at the end.

I shortened that to "or blank":
(though technically blank is "space or TAB", while \s includes several more)

                     there is no other punctuation or blank at the end.

>     --help       display this help and exit
>     --version    output version information and exit
> @@ -102,12 +104,14 @@ sub quoted_cmd(@)
>  {
>    my $since_date = '1970-01-01 UTC';
>    my $format_string = '%s%n%b%n';
> +  my $append_dot = 0;
>    GetOptions
>      (
>       help => sub { usage 0 },
>       version => sub { print "$ME version $VERSION\n"; exit },
>       'since=s' => \$since_date,
>       'format=s' => \$format_string,
> +     'append-dot' => \$append_dot,
>      ) or usage 1;
>
>    my @cmd = (qw (git log --log-size), "--since=$since_date",
> @@ -163,6 +167,17 @@ sub quoted_cmd(@)
>          }
>        else
>          {
> +          if ($append_dot)
> +            {
> +              # If the first line of the message has enough room, then
> +              if (length $line[0] < 72)
> +                {
> +                  # append a dot if there is no other punctuation
> +                  # or a blank symbol at the end.
> +                  $line[0] =~ /[[:punct:]\s]$/ or $line[0] .= ".";

And put the "or ..." on a 2nd line:

                     $line[0] =~ /[[:punct:]\s]$/
                       or $line[0] .= '.';

> +                }
> +            }

Here's the result.
I'll wait for an ACK from you in case there's anything
you'd like to adjust.

>From 6fa93934508389f8f2dd0f921ebb6c720aa49cdf Mon Sep 17 00:00:00 2001
From: "Dmitry V. Levin" <address@hidden>
Date: Sun, 30 Oct 2011 22:00:00 +0000
Subject: [PATCH] gitlog-to-changelog: new option --append-dot

* build-aux/gitlog-to-changelog: New option --append-dot, makes the
first non-blank line of each commit message terminated with a dot.
---
 ChangeLog                     |    6 ++++++
 build-aux/gitlog-to-changelog |   18 +++++++++++++++++-
 2 files changed, 23 insertions(+), 1 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 4c4b7e2..a692aa9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2011-10-30  Dmitry V. Levin  <address@hidden>
+
+       gitlog-to-changelog: new option --append-dot.
+       * build-aux/gitlog-to-changelog: New option --append-dot, makes the
+       first non-blank line of each commit message terminated with a dot.
+
 2011-10-30  Bruno Haible  <address@hidden>

        ffsl, ffsll: Avoid compilation error due to 'restrict'.
diff --git a/build-aux/gitlog-to-changelog b/build-aux/gitlog-to-changelog
index a5fd80d..c3a5ef3 100755
--- a/build-aux/gitlog-to-changelog
+++ b/build-aux/gitlog-to-changelog
@@ -3,7 +3,7 @@ eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}'
     if 0;
 # Convert git log output to ChangeLog format.

-my $VERSION = '2009-10-30 13:46'; # UTC
+my $VERSION = '2011-10-31 07:45'; # UTC
 # The definition above must lie within the first 8 lines in order
 # for the Emacs time-stamp write hook (at end) to update it.
 # If you change this file with Emacs, please let the write hook
@@ -65,6 +65,8 @@ OPTIONS:
    --format=FMT set format string for commit subject and body;
                   see 'man git-log' for the list of format metacharacters;
                   the default is '%s%n%b%n'
+   --append-dot append a dot to the first line of each commit message if
+                  there is no other punctuation or blank at the end.

    --help       display this help and exit
    --version    output version information and exit
@@ -102,12 +104,14 @@ sub quoted_cmd(@)
 {
   my $since_date = '1970-01-01 UTC';
   my $format_string = '%s%n%b%n';
+  my $append_dot = 0;
   GetOptions
     (
      help => sub { usage 0 },
      version => sub { print "$ME version $VERSION\n"; exit },
      'since=s' => \$since_date,
      'format=s' => \$format_string,
+     'append-dot' => \$append_dot,
     ) or usage 1;

   my @cmd = (qw (git log --log-size), "--since=$since_date",
@@ -163,6 +167,18 @@ sub quoted_cmd(@)
         }
       else
         {
+          if ($append_dot)
+            {
+              # If the first line of the message has enough room, then
+              if (length $line[0] < 72)
+                {
+                  # append a dot if there is no other punctuation or blank
+                  # at the end.
+                  $line[0] =~ /[[:punct:]\s]$/
+                    or $line[0] .= '.';
+                }
+            }
+
           # Prefix each non-empty line with a TAB.
           @line = map { length $_ ? "\t$_" : '' } @line;

--
1.7.7.1.476.g9890



reply via email to

[Prev in Thread] Current Thread [Next in Thread]