diff options
Diffstat (limited to 'build-aux/thanks-gen')
-rwxr-xr-x | build-aux/thanks-gen | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/build-aux/thanks-gen b/build-aux/thanks-gen new file mode 100755 index 00000000..92090ced --- /dev/null +++ b/build-aux/thanks-gen @@ -0,0 +1,20 @@ +#!/usr/bin/perl -nl +# Use Perl's multi-byte alignment code, via sprintf, while +# performing a rudimentary check for duplicate names and +# removing duplicate name,email pairs. +use Encode; + +BEGIN { my (%elide, %seen, %name) } + +chomp; +my ($name, $email) = split '\0', decode ('UTF-8', $_); + +if ($elide{"!$name"}) { +; # ignore this author +} elsif (index ($name, '!') == 0) { + $elide{$name}++; +} elsif ($seen{$name}++) { + warn "$0: NO-THANKS: duplicate name: $name\n"; +} else { + print encode ('UTF-8', sprintf ('%-36s', $name)), $email; +} |