From: Rafael Garcia-Suarez Date: Tue, 25 Mar 2008 09:39:08 GMT Subject: Re: [PATCH 7/7] cvsserver: Use the user part of the email in log and annotate results Message-ID: In-Reply-To: <20080325092621.GN25732@mail-vs.djpig.de> On 25/03/2008, Frank Lichtenheld wrote: > On Mon, Mar 24, 2008 at 11:50:55PM +0100, Damien Diederen wrote: > > +# Generate a CVS author name from Git author information, by taking > > +# the first eight characters of the user part of the email address. > > +sub cvs_author > > +{ > > + my $author = shift; > > + > > + $author =~ s/.*<([^>]+)\@[^>]+>$/$1/; > > + $author =~ s/^(.{8}).*/$1/; > > > IMHO substr($author, 0, 8) would be easier to read here. (It is also > much faster according to some quick benchmarks I just ran) While we're at nitpicking: Faster, shorter, and probably more robust if no @ appears in the email address: my $author_line = shift; (my $author) = $author_line =~ /<([^>@]{1,8})/;