diff options
Diffstat (limited to 'bucky2/bin/build-autocomplete')
| -rwxr-xr-x | bucky2/bin/build-autocomplete | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/bucky2/bin/build-autocomplete b/bucky2/bin/build-autocomplete new file mode 100755 index 0000000..d9a62fd --- /dev/null +++ b/bucky2/bin/build-autocomplete @@ -0,0 +1,53 @@ +#!/usr/bin/perl +use lib "../lib"; +use Bucky; +use Bucky::Search; +use Data::Dumper; +use DB_File; + +my $file = "auto.db"; + +my $search = new Bucky::Search; + +my $index = $search->index; +my $auto_index = $search->auto_index_write; + +my $partials = {}; +my $partials_with_media = {}; +foreach my $word (keys %$index) + { + # goatse operator + my $count =()= $index->{$word} =~ /,/g; + + next unless $word; + + my $par = ''; + my @letters = split "", $word; + for (my $i = 0; $i < scalar @letters; $i++) + { + $par .= $letters[$i]; + if (! exists $partials->{$par} || $partials->{$par}->[0] < $count) + { + $partials->{$par} = [$count,$word]; + } + } + } +# don't autocomplete if we match a word +foreach my $word (keys %$index) + { + $partials->{$word}->[1] = $word + } + +foreach my $par (sort keys %$partials) + { + $auto_index->{$par} = $partials->{$par}->[1]; + } +$search->auto_index_close; + +print "NEW: " ; system("/bin/ls", "-l", "./$file"); +print "OLD: " ; system("/bin/ls", "-l", "../cgi-bin/$file"); +system("/bin/mv", "../cgi-bin/$file", "../cgi-bin/$file.1"); +system("/bin/mv", "./$file", "../cgi-bin/$file"); + +exit; + |
