Send SMS by the paid WWW::SMS
[PerlMail.git] / contacts-n9k2mutt
index d964139..fb3ef21 100755 (executable)
@@ -40,14 +40,21 @@ while (<>) {
                        my($name,$mail,$attr,$iscompany)=map(($data->{$_}),qw(name mail attr iscompany));
                        $name=~s/,.*$//s;
                        my @nicks=();
-                       push @nicks,$1 while $name=~s/"([^"]*)"//s;
+                       my $name_force;
+                       while ($name=~s/"([^"]*)"([!])?//s) {
+                               push @nicks,$1;
+                               $name_force=$1 if $2;
+                               }
                        $name=~s/\s*$//s;
                        $name=~s/^(\w+)\s+(\w+)$/$2 $1/s if !$iscompany;
-                       (my $nick=$name.(!$attr ? "" : ".$attr"))=~s/\s+/./gs;
-                       push @nicks,$nick;
+                       push @nicks,$name if !$name_force;
+                       for (@nicks) {
+                               $_.=".$attr" if $attr;
+                               s/\s+/./gs;
+                               }
                        map({
                                        "nick"=>$_,
-                                       "obj"=>Mail::Address->new($name,$mail),
+                                       "obj"=>Mail::Address->new(($name_force || $name),$mail),
                                        },@nicks);
                        } @data);
        for (@nicked) {