X-Git-Url: http://git.jankratochvil.net/?p=PerlMail.git;a=blobdiff_plain;f=contacts-n9k2mutt;h=6136f45b5dafb0bde280ffd06fcdbb97aeda01c9;hp=ee4d9ad5f829ccbeefee17d5029db47c3ed59ad8;hb=d3f7164a228e46921c5a9acaab1c086461e209bd;hpb=be8e1bc69e15a29e52d8bbcde5971214a5b8340b diff --git a/contacts-n9k2mutt b/contacts-n9k2mutt index ee4d9ad..6136f45 100755 --- a/contacts-n9k2mutt +++ b/contacts-n9k2mutt @@ -17,6 +17,9 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# Name: Lastname Firstname "nick1" "nick2", dropped text +# Company: same as Name to indicate company record + use vars qw($VERSION); $VERSION=do { my @r=(q$Revision$=~/\d+/g); sprintf "%d.".("%03d"x$#r),@r; }; @@ -24,7 +27,6 @@ use strict; use warnings; require Getopt::Long; -require PerlMail::Contacts; require Mail::Address; @@ -32,9 +34,16 @@ Getopt::Long::Configure( "no_ignorecase", "bundling", ); +my $opt_9000; die if !Getopt::Long::GetOptions( + "9000"=>\$opt_9000, ); +my $type="9210"; +$type="9000" if $opt_9000; +my $class="PerlMail::Contacts::$type"; +eval "require $class;1;" or die "Cannot load loader $class: $!"; + undef $/; while (<>) { my @data=map({ @@ -50,7 +59,7 @@ while (<>) { "iscompany"=>($record{"Name"} && $record{"Company"} && $record{"Name"} eq $record{"Company"}), })); } @record); - } PerlMail::Contacts->import($_)); + } $class->in($_)); my @nicked=map({ my $data=$_; my($name,$mail,$attr,$iscompany)=map(($data->{$_}),qw(name mail attr iscompany)); @@ -73,7 +82,11 @@ while (<>) { "obj"=>Mail::Address->new(($name_force || $name),$mail), },@nicks); } @data); + my %dupe; for (@nicked) { - print "alias ".$_->{"nick"}." ".$_->{"obj"}->format()."\n"; + my $nick=$_->{"nick"}; + my $dupe=$dupe{$nick}++; + $nick.=".$dupe" if $dupe; + print "alias $nick ".$_->{"obj"}->format()."\n"; } }