From: Marcus Alanen <marcus@infa.abo.fi>
To: riel@conectiva.com.br, Johnny Mnemonic <johnny@themnemonic.org>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Changelogs on kernel.org
Date: Mon, 13 May 2002 14:52:40 +0300 [thread overview]
Message-ID: <200205131152.OAA05817@infa.abo.fi> (raw)
In-Reply-To: <Pine.LNX.4.44L.0205122146310.32261-100000@imladris.surriel.com>
>> - changedescription (author)
>So, is there anybody willing to put together the scripts to
>generate this changelog format automatically ?
Combining the efforts, the following almost makes coffee.
- Short mode
- Full mode
- Original mode
The original mode you requested prints the e-mail address, I guess
it should be the author's real name to look more nice.
#!/usr/bin/perl -w
use strict;
# 0 for short, 1 for full, 2 for "original changelog"
my $mode = 2;
# minimum space between entry and author for the original mode
my $space = 5;
my %people = ();
my $addr = "";
my @cur = ();
my $comment = 0;
sub append_item() {
if (!$addr) {
return;
}
if (!$people{$addr}) {
@{$people{$addr}} = ();
}
push @{$people{$addr}}, [@cur];
@cur = ();
}
while (<>) {
# Match address
if (/^\s*<([^>]+)>/) {
# Add old item (if any) before beginning new
append_item();
$addr = $1;
$comment = 1;
} elsif ($addr) {
# Add line to patch
s/^\s*(.*)\s*$/$1/;
$_ =~ s/\[PATCH\] //g;
$_ =~ s/\s*PATCH //g;
if ($comment == 1 or $mode != 0) {
push @cur, "$_\n";
$comment = 0;
}
} else {
# Header information
print;
}
}
append_item();
sub print_items($) {
my $person = $_[0];
my @items = @{$people{$person}};
# Vain attempt to sort patches from one address
@items = sort @items;
if ($mode == 0 or $mode == 1) {
print "<$person>\n";
} else {
$person = "($person)";
}
while ($_ = shift @items) {
if ($mode == 0) {
print "\to " . @$_[0];
} elsif ($mode == 1) {
print "\t------------------------------------------------------------\n";
foreach $_ (@$_) {
print "\t$_";
}
} elsif ($mode == 2) {
$_ = @$_[0];
chop;
$_ = "- $_";
# Split it onto two lines if necessary
if (length("$_ . $person") > 76 - $space) {
print ("$_\n" . " " x (76-length($person)) . "$person\n");
} else {
print ("$_" . " " x (76-length($person)-length($_)) . "$person\n");
}
}
}
}
# Print the information
foreach $addr (sort keys %people) {
print_items($addr);
if ($mode != 2) { print "\n"; }
}
--
Marcus Alanen
maalanen@abo.fi
next prev parent reply other threads:[~2002-05-13 11:53 UTC|newest]
Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-05-12 0:07 Changelogs on kernel.org Ian Molton
2002-05-12 0:48 ` Diego Calleja
2002-05-12 1:09 ` john slee
2002-05-12 1:14 ` john slee
2002-05-12 5:05 ` Brian C. Huffman
2002-05-12 10:05 ` Johnny Mnemonic
2002-05-13 0:46 ` Rik van Riel
2002-05-13 11:52 ` Marcus Alanen [this message]
2002-05-13 12:09 ` Tomas Szepe
2002-05-13 13:08 ` Marcus Alanen
2002-05-13 14:08 ` Tomas Szepe
2002-05-13 14:45 ` Tomas Szepe
2002-05-13 14:06 ` Greg KH
2002-05-13 15:11 ` Tomas Szepe
2002-05-13 14:51 ` Greg KH
2002-05-13 15:58 ` Matthias Andree
2002-05-13 16:01 ` Freeze on 2.4.18 Pol
2002-05-13 15:21 ` Changelogs on kernel.org Matthias Andree
2002-05-13 22:05 ` Robinson Maureira Castillo
2002-05-13 23:41 ` Tomas Szepe
2002-05-14 8:44 ` Matthias Andree
2002-05-14 8:43 ` Matthias Andree
2002-05-14 9:23 ` Tomas Szepe
2002-05-13 11:58 ` Tomas Szepe
2002-05-13 12:39 ` Dave Gilbert (Home)
2002-05-13 13:01 ` Russell King
2002-05-13 13:27 ` Tomas Szepe
2002-05-13 13:42 ` Russell King
2002-05-13 15:12 ` Larry McVoy
2002-05-13 15:29 ` Tomas Szepe
2002-05-13 15:37 ` Larry McVoy
2002-05-12 9:14 ` Trever L. Adams
2002-05-12 20:06 ` Linus Torvalds
2002-05-12 20:20 ` Jeff Garzik
2002-05-12 20:31 ` Dr. David Alan Gilbert
2002-05-12 20:41 ` Arnaldo Carvalho de Melo
2002-05-13 20:57 ` Linus Torvalds
2002-05-14 0:29 ` Arnaldo Carvalho de Melo
2002-05-13 1:56 ` Linus Torvalds
2002-05-13 9:31 ` Matthias Andree
2002-05-13 8:52 ` Greg KH
2002-05-13 10:41 ` Matthias Andree
2002-05-13 10:12 ` Tomas Szepe
2002-05-13 10:17 ` Tomas Szepe
2002-05-13 13:00 ` Ian Molton
2002-05-12 20:31 ` Matthew D. Pitts
2002-05-12 20:35 ` Anton Altaparmakov
2002-05-12 21:04 ` HPFS and linux-2.4.18 Wojciech "Sas" Cieciwa
2002-05-12 21:17 ` Changelogs on kernel.org Florian Weimer
2002-05-12 21:42 ` Marcus Alanen
2002-05-12 22:12 ` Tomas Szepe
2002-05-13 10:32 ` Helge Hafting
2002-05-13 7:34 ` Kristian Peters
2002-05-12 21:51 ` Ian Molton
2002-05-12 21:47 ` Florian Weimer
2002-05-12 23:50 ` Sven.Riedel
2002-05-13 2:01 ` Linus Torvalds
2002-05-13 5:10 ` Jeff Garzik
2002-05-13 5:17 ` Larry McVoy
2002-05-13 10:37 ` Helge Hafting
2002-05-13 19:00 ` Jeff Garzik
2002-05-13 8:57 ` jw schultz
2002-05-13 8:06 ` Greg KH
[not found] <30386.1021456050@redhat.com>
2002-05-15 16:39 ` Linus Torvalds
2002-05-15 18:07 ` David Woodhouse
2002-05-15 19:20 ` Larry McVoy
2002-05-15 20:03 ` David Woodhouse
2002-05-15 20:08 ` Larry McVoy
2002-05-15 20:15 ` David Woodhouse
2002-05-15 20:34 ` Larry McVoy
2002-05-15 21:03 ` Kenneth Johansson
2002-05-15 22:30 ` Larry McVoy
2002-05-15 22:56 ` Kai Germaschewski
2002-05-15 22:59 ` Larry McVoy
2002-05-16 2:26 ` Horst von Brand
2002-05-16 7:02 ` Rusty Russell
2002-05-15 21:38 James Bottomley
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200205131152.OAA05817@infa.abo.fi \
--to=marcus@infa.abo.fi \
--cc=johnny@themnemonic.org \
--cc=linux-kernel@vger.kernel.org \
--cc=riel@conectiva.com.br \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).