version 1.6, 2002/01/13 00:32:12
|
version 1.10, 2003/02/13 16:27:32
|
Line 40 use POSIX qw (locale_h);
|
Line 40 use POSIX qw (locale_h);
|
use lib "../lib"; |
use lib "../lib"; |
use chgkfiles; |
use chgkfiles; |
use dbchgk; |
use dbchgk; |
open (STDERR,">errors"); |
my $DUMPDIR = $ENV{DUMPDIR} || "../dump"; |
|
|
|
open (STDERR,">$DUMPDIR/errors"); |
my $initime=time; |
my $initime=time; |
open TIME, ">time"; |
open TIME, ">$DUMPDIR/time"; |
do "common.pl"; |
do "common.pl"; |
do "chgk.cnf"; |
do "chgk.cnf"; |
|
|
Line 99 die "No dictionaries found! Check your c
|
Line 101 die "No dictionaries found! Check your c
|
print "Getting words...\n"; |
print "Getting words...\n"; |
|
|
print TIME "\t\t".(time-$initime)."\n"; |
print TIME "\t\t".(time-$initime)."\n"; |
|
my $broken=0; |
|
|
for my $commonI(1..$times) |
for my $commonI(1..$times) |
{ |
{ |
|
last if $broken; |
|
|
print "loading nests\n"; |
print "loading nests\n"; |
|
|
Line 119 while ((++$sch<=$qlimit) && (($id, @ss)
|
Line 122 while ((++$sch<=$qlimit) && (($id, @ss)
|
# и вешаем в массив, индексы которого -- словоформы, |
# и вешаем в массив, индексы которого -- словоформы, |
# а значения -- списки вопросов. |
# а значения -- списки вопросов. |
{ |
{ |
|
if (-e "RS_stop") {unlink("RS_stop"); $broken=1;last} |
print "$sch $id\n" ;#unless (++$sch % 1); |
print "$sch $id\n" unless ($sch % 10);#unless (++$sch % 1); |
searchmark($id); |
searchmark($id); |
if ($forbidden{$id}) {next}; |
if ($forbidden{$id}) {next}; |
foreach $fieldnumber (0..$#ss) #перебираем поля |
foreach $fieldnumber (0..$#ss) #перебираем поля |
Line 143 foreach $wordnumber(0..$#list)
|
Line 146 foreach $wordnumber(0..$#list)
|
@n= split ' ',$n; |
@n= split ' ',$n; |
$nfkvo{$_}++ foreach @n; |
$nfkvo{$_}++ foreach @n; |
my $r=packword($fieldnumber, $id,$wordnumber%256); |
my $r=packword($fieldnumber, $id,$wordnumber%256); |
print "$word !$r!\n"; |
|
$neww2k{$_}.=$r foreach (@n); |
$neww2k{$_}.=$r foreach (@n); |
} |
} |
else { |
else { |
Line 173 foreach $wordnumber(0..$#list)
|
Line 175 foreach $wordnumber(0..$#list)
|
$nfkvo{$nfnumber}++; |
$nfkvo{$nfnumber}++; |
$a=\$neww2k{$nfnumber}; |
$a=\$neww2k{$nfnumber}; |
my $r=packword($fieldnumber, $id,$wordnumber); |
my $r=packword($fieldnumber, $id,$wordnumber); |
print "$word !!$r!\n"; |
|
$$a.=$r; |
$$a.=$r; |
if (length $$a>100) {flushw2k($nfnumber)} |
if (length $$a>100) {flushw2k($nfnumber)} |
} |
} |
Line 182 print "$word !!$r!\n";
|
Line 183 print "$word !!$r!\n";
|
$nfnumber=addnf(0, $f, $flag,1); |
$nfnumber=addnf(0, $f, $flag,1); |
$newnf{uc $word}.=" $nfnumber"; |
$newnf{uc $word}.=" $nfnumber"; |
my $r=packword($fieldnumber, $id,$wordnumber); |
my $r=packword($fieldnumber, $id,$wordnumber); |
print "$word !!!$r!\n"; |
|
$neww2k{$nfnumber}.=$r; |
$neww2k{$nfnumber}.=$r; |
} |
} |
} |
} |