--- trunk/bfilter.pl 2004/09/07 09:16:06 4 +++ trunk/bfilter.pl 2004/09/07 17:44:56 7 @@ -35,11 +35,13 @@ while() { chomp; + my ($path,$headline) = split(/\t+/,$_,2); + # escape single quote - s/'/\\'/g; + $headline =~ s/'/\\'/g; # split into min_len part and rest - my ($part,$rest) = ( substr($_,0,$min_len), substr($_,$min_len) ); + my ($part,$rest) = ( substr($headline,0,$min_len), substr($headline,$min_len) ); # make part lowercase $part = lc($part); @@ -48,21 +50,29 @@ # new part? if ($part ne $last_part) { - print STDERR $last_part,"\t",$#part_arr+1,"\n" if ($debug); + print STDERR $last_part,"\t",$#part_arr+1,"\n" if ($debug && $#part_arr > $increase_at); $max_elements = $#part_arr if ($#part_arr > $max_elements); - print "headlines['$last_part'] = Array(\n ",join(",\n ",@part_arr),");\n" if (@part_arr); + print "headlines['$last_part'] = [\n ",join(",\n ",@part_arr),"];\n" if (@part_arr); $total += $#part_arr; @part_arr = (); $last_part = $part; } - push @part_arr, "'$_'"; + push @part_arr, "['$path','$headline']"; # break out? last if ($max && $total > $max); } -print "headlines['$last_part'] = Array(\n ",join(",\n ",@part_arr),");\n" if (@part_arr); -print "var min_len = $min_len;\n"; -print "// index elements: $total\n"; +print "headlines['$last_part'] = [\n ",join(",\n ",@part_arr),"];\n" if (@part_arr); +print qq{ + +var min_len = $min_len; +var html_pre = '
'; +var html_post = ''; + +// index elements: $total + +}; -print STDERR "You have more than $increase_at elements in one array,\nyou whould probably increase min_len to ",$min_len+1," or higher.\n" if ($max_elements > $increase_at); +print STDERR "You have more than $increase_at elements, so you should\nincrease min_len to ",$min_len+1," or higher for performance benefit.\n" if ($max_elements > $increase_at);