+ {"key"=>qr(^cvs\b),"text"=>sub ($) {
+ $_[0]=~s/^cvs//;
+ $_[0]=~s/^-/ /;
+ return "CVS".$_[0];
+ },
+ "format"=>sub ($$) {
+ my($val,$key)=@_;
+ $key=~s/^cvs//;
+ $key=~s/^-/ /;
+ my $branch="";
+ $branch="only_with_tag=$1" if $val=~s/:(.*)//;
+ return join("<br />\n\t\t",map({ a_href($_->[1],$_->[0]); }
+ ["ViewCVS CVS repository",$W->{"project_viewcvs"}.$val."/".(!$branch ? '' : '?'.$branch)],
+ ["Download CVS snapshot" ,
+ $W->{"project_viewcvs"}.$val."/".File::Basename::basename($val).".tar.gz?tarball=1"
+ .(!$branch ? '' : '&'.$branch)],
+ ["CVS ChangeLog" ,$W->{"top_dir"}."/project/ChangeLog.txt.pl?cvs=$val"]));
+ }},