mirror of
https://github.com/brazilofmux/tinymux
synced 2026-08-13 00:23:11 -04:00
git-svn-id: https://tinymux.googlecode.com/svn/branches/dev_brazil@1362 d1b986fa-651c-0410-a323-35a8662cf44d
49 lines
986 B
Perl
Executable file
49 lines
986 B
Perl
Executable file
#!/usr/bin/perl
|
|
|
|
my $line;
|
|
|
|
my @prohibited = ();
|
|
$#prohibited = 1114109;
|
|
|
|
my $profiletable = $ARGV[0];
|
|
my $unicodetable = $ARGV[1];
|
|
|
|
open(STRINGPREP,"< $profiletable") || die("Eep, no stringprep.");
|
|
|
|
while ($line = <STRINGPREP>)
|
|
{
|
|
if ($line =~ /^\s*([0-9A-F\-]+).*/)
|
|
{
|
|
my $codepage = $1;
|
|
if ($codepage =~ /^([0-9A-F]+)\-([0-9A-F]+)$/)
|
|
{
|
|
my $codeval1 = hex $1;
|
|
my $codeval2 = hex $2;
|
|
for ($loop = $codeval1; $loop <= $codeval2; $loop++)
|
|
{
|
|
$prohibited[$loop] = 1;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
my $codeval = hex $codepage;
|
|
$prohibited[$codeval] = 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
close(STRINGPREP);
|
|
|
|
open (UNICODE,"< $unicodetable") || die("Eep, no unicode.");
|
|
|
|
while ($line = <UNICODE>)
|
|
{
|
|
if ($line =~ /^([0-9A-F]+);.*/)
|
|
{
|
|
$unicodeval = hex $1;
|
|
if (!defined $prohibited[$unicodeval])
|
|
{
|
|
print $line;
|
|
}
|
|
}
|
|
}
|