This is part of the UnihanTag Extension. You can also view my other MediaWiki extensions.
#!/usr/bin/perl
$| = 1;use CDB_File;use Fcntl;use File::Path;
my $src = "Unihan.txt";my $dst = "Unihan.cdb";print "Processing $src...";my $cdb = new CDB_File("$dst", "$dst.$$") or die "$dst: $!";
my $n = 0;
open my $fh, "$src" or die "$src:$!";
while(<$fh>){ chomp; my ($uni, $k, $v) = split(/\t/, $_); next if /^$/ or /^#/; $v = lc($v) if ($k eq 'kMandarin'); $cdb->insert(lc(substr($uni, 2)."-".substr($k, 1)), $v); $n++;}close $fh;$cdb->finish;print "$n characters processed.\n";
Kenny Root
Copyright © Kenny Root. All rights reserved.