a6e708f37f
Revert "Replacing old implementation with working implementation"
This reverts commit 1e121f45e2
.
Please enter the commit message for your changes. Lines starting
with '#' will be ignored, and an empty message aborts the commit.
Committer: tom <tom@lim.(none)>
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: _old/app/Makefile
deleted: _old/app/conf/Makefile
deleted: _old/app/conf/compiledic.conf
deleted: _old/app/conf/cor.conf
deleted: _old/app/conf/dgc.conf
deleted: _old/app/conf/dgp.conf
deleted: _old/app/conf/gph.conf
deleted: _old/app/conf/grp.conf
deleted: _old/app/conf/gue.conf
deleted: _old/app/conf/kor.conf
deleted: _old/app/conf/lem.conf
deleted: _old/app/conf/mar.conf
deleted: _old/app/conf/ser.conf
deleted: _old/app/conf/utt.conf
modified: _old/app/src/common/Makefile
modified: _old/app/src/compiledic/Makefile
modified: _old/app/src/compiledic/aut2fsa.cc
modified: _old/app/src/cor/Makefile
modified: _old/app/src/dgp/Makefile
new file: _old/app/src/dgp/canonize
new file: _old/app/src/dgp/dgc
modified: _old/app/src/dgp/grammar.hh
modified: _old/app/src/dgp/mgraph.hh
modified: _old/app/src/dgp/sgraph.hh
modified: _old/app/src/dgp/thesymbols.hh
new file: _old/app/src/dgp/tre
modified: _old/app/src/gue/Makefile
modified: _old/app/src/gue/guess.cc
modified: _old/app/src/kor/Makefile
modified: _old/app/src/kor/corlist.cc
modified: _old/app/src/kor/corr.cc
new file: _old/app/src/kor/corr.hh
modified: _old/app/src/kor/main.cc
modified: _old/app/src/lem/Makefile
modified: _old/app/src/lem/lem.cc
modified: _old/app/src/lib/Makefile
modified: _old/app/src/lib/auttools.cc
modified: _old/app/src/lib/symtab.cc
modified: _old/app/src/lib/tft.h
modified: _old/app/src/lib/tfti.h
modified: _old/app/src/lib/ttrans.h
modified: _old/app/src/lib/word.cc
modified: _old/app/src/lib/word.h
modified: _old/app/src/tok.c/Makefile
modified: _old/app/src/tok.c/cmdline_tok.ggo
modified: _old/app/src/tok.c/common_tok.cc
modified: _old/app/src/tok/Makefile
modified: _old/nawszelkiwypadek/tools/aut2fsa
modified: _old/nawszelkiwypadek/tools/cor_dic/makeLabels.pl
modified: _old/nawszelkiwypadek/tools/cor_dic/prep.pl
modified: _old/nawszelkiwypadek/tools/fsm2aut
modified: _old/nawszelkiwypadek/tools/gue_dic/canon.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/compile_user_dict.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/count_prefs.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/cut_prefs.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/makeLabels.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/prep.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/prep_user_dict.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/rmDup.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/stat.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/stat_pre.pl
modified: _old/nawszelkiwypadek/tools/lem_dic/makeLabels.pl
modified: _old/nawszelkiwypadek/tools/lem_dic/prep.pl
modified: auto/defaults
modified: auto/options
modified: auto/output/Makefile
modified: auto/output/config_h
modified: auto/summary
modified: configure
87 lines
1.4 KiB
Perl
Executable File
87 lines
1.4 KiB
Perl
Executable File
#! /usr/bin/perl
|
|
|
|
use locale;
|
|
use strict;
|
|
|
|
my @prefs;
|
|
|
|
sub addPref {
|
|
|
|
my $pref = shift;
|
|
my $desc = shift;
|
|
my $i;
|
|
for ($i=0; $i< @prefs; ++$i) {
|
|
my @tab = @{$prefs[$i]};
|
|
if (${@{$prefs[$i]}}[0] =~ /^$pref/) {
|
|
${@{$prefs[$i]}}[1]{$desc}++;
|
|
return;
|
|
}
|
|
}
|
|
my @new;
|
|
my %hash;
|
|
|
|
$hash{$desc}++;
|
|
push(@new, $pref);
|
|
push(@new, \%hash);
|
|
|
|
push(@prefs, \@new);
|
|
}
|
|
|
|
sub printPrefs {
|
|
|
|
my $i;
|
|
for $i (@prefs) {
|
|
my @tab = @$i;
|
|
# print $tab[0]."\t";
|
|
my $pref = $tab[0];
|
|
my %hash = %{$tab[1]};
|
|
my @keys = keys(%hash);
|
|
# print(@keys."\n");
|
|
my $sum = 0;
|
|
my $key;
|
|
for $key (@keys) {
|
|
$sum += $hash{$key};
|
|
}
|
|
for $key (@keys) {
|
|
print $pref."\t";
|
|
print $key."\t";
|
|
print $hash{$key}."\t";
|
|
print $sum."\n";
|
|
}
|
|
}
|
|
}
|
|
|
|
if (@ARGV < 2) {
|
|
print "USAGE: count_prefs.pl MIN_PREF_LEN MAX_PREF_LEN\n";
|
|
exit;
|
|
}
|
|
|
|
my $MIN = shift;
|
|
my $MAX = shift;
|
|
my $PART = shift;
|
|
|
|
if ($MIN > $MAX) {
|
|
print "MIN_PREF_LEN > MAX_PREF_LEN! ($MIN > $MAX)\n";
|
|
exit;
|
|
}
|
|
my $begin = "";
|
|
while (<>) {
|
|
my $len = $MIN;
|
|
$_ =~ /(\w+);(.*)$/;
|
|
my $pref = $1;
|
|
my $desc = $2;
|
|
if ($begin eq "") {
|
|
$begin = substr($pref, 0, $MIN);
|
|
}
|
|
if ($pref !~ /^$begin.*/) {
|
|
printPrefs();
|
|
undef(@prefs);
|
|
$begin = "";
|
|
}
|
|
while ($len <= $MAX) {
|
|
addPref(substr($pref, 0, $len++), $desc);
|
|
}
|
|
}
|
|
|
|
printPrefs();
|