summaryrefslogtreecommitdiff
path: root/build-aux/gitlog-to-changelog
diff options
context:
space:
mode:
authorDmitry V. Levin <ldv@altlinux.org>2011-10-30 22:00:00 +0000
committerJim Meyering <meyering@redhat.com>2011-10-31 08:54:41 +0100
commit6fa93934508389f8f2dd0f921ebb6c720aa49cdf (patch)
tree9deb70a80adb06079f0bc8ef8fcaca7b974e0e03 /build-aux/gitlog-to-changelog
parent318f05f156b5ebe583931d156186ed85ef4361ee (diff)
downloadgnulib-6fa93934508389f8f2dd0f921ebb6c720aa49cdf.tar.gz
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.
Diffstat (limited to 'build-aux/gitlog-to-changelog')
-rwxr-xr-xbuild-aux/gitlog-to-changelog18
1 files changed, 17 insertions, 1 deletions
diff --git a/build-aux/gitlog-to-changelog b/build-aux/gitlog-to-changelog
index a5fd80db6a..c3a5ef396c 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;