Parent Directory
|
Revision Log
++ ChangeLog 8 Nov 2008 09:30:47 -0000 2008-11-08 Wakaba <wakaba@suika.fam.cx> * mkcommitfeed.pl: New file (copied from ../www/harusame/). Forgetten to copy this file.
| 1 | wakaba | 1.1 | #!/usr/bin/perl |
| 2 | use strict; | ||
| 3 | |||
| 4 | use Getopt::Long; | ||
| 5 | use Pod::Usage; | ||
| 6 | use Time::Local; | ||
| 7 | |||
| 8 | my $file_name; | ||
| 9 | my $feed_url; | ||
| 10 | my $feed_title = 'ChangeLog'; | ||
| 11 | my $feed_author_name; | ||
| 12 | my $feed_author_mail; | ||
| 13 | my $feed_author_url; | ||
| 14 | my $feed_lang = 'i-default'; | ||
| 15 | my $feed_related_url; | ||
| 16 | my $feed_license_url; | ||
| 17 | my $feed_rights; | ||
| 18 | my $entry_content; | ||
| 19 | my $entry_author_name; | ||
| 20 | my $entry_author_mail; | ||
| 21 | my $entry_date; | ||
| 22 | my $entry_title; | ||
| 23 | |||
| 24 | GetOptions ( | ||
| 25 | 'entry-author-mail=s' => \$entry_author_mail, | ||
| 26 | 'entry-author-name=s' => \$entry_author_name, | ||
| 27 | 'entry-content=s' => \$entry_content, | ||
| 28 | 'entry-title=s' => \$entry_title, | ||
| 29 | 'feed-author-mail=s' => \$feed_author_mail, | ||
| 30 | 'feed-author-name=s' => \$feed_author_name, | ||
| 31 | 'feed-author-url=s' => \$feed_author_url, | ||
| 32 | 'feed-lang=s' => \$feed_lang, | ||
| 33 | 'feed-license-url=s' => \$feed_license_url, | ||
| 34 | 'feed-related-url=s' => \$feed_related_url, | ||
| 35 | 'feed-rights=s' => \$feed_rights, | ||
| 36 | 'feed-title=s' => \$feed_title, | ||
| 37 | 'feed-url=s' => \$feed_url, | ||
| 38 | 'file-name=s' => \$file_name, | ||
| 39 | 'help' => sub { | ||
| 40 | pod2usage (-exitval => 0, -verbose => 2); | ||
| 41 | }, | ||
| 42 | ) or pod2usage (-exitval => 1, -verbose => 1); | ||
| 43 | pod2usage (-exitval => 1, -verbose => 1, | ||
| 44 | -msg => "Required argument --file-name is not specified.\n") | ||
| 45 | unless defined $file_name; | ||
| 46 | pod2usage (-exitval => 1, -verbose => 1, | ||
| 47 | -msg => "Required argument --feed-url is not specified.\n") | ||
| 48 | unless defined $feed_url; | ||
| 49 | |||
| 50 | unless (defined $entry_content) { | ||
| 51 | $entry_content = ''; | ||
| 52 | $entry_content .= $_ while <>; | ||
| 53 | } | ||
| 54 | |||
| 55 | if ($entry_content =~ /^(\d+)-(\d+)-(\d+)\s+(.+)<([^<>]+)>/m) { | ||
| 56 | # $entry_date //= timegm (0, 0, 0, $3, $2-1, $1); | ||
| 57 | $entry_author_name //= $4; | ||
| 58 |