|
|
|
Wikipedia:Archiwum/Skrypt sortujący interwiki linksSkrypt do dalszych ulepszeń i ewent. zrobienia bota ? Największy problem tego skryptu to że nie działa jeśli interwiki links nie są w jednej linii.
#!/usr/bin/perl -w
# This script is in the public domain
# Ten program jest public domain
# Krzysztof P. Jasiutowicz 21-05-2003
#
use diagnostics;
my ($k,$v);
%zzz =
(
"af" => 0, #w afrikans
"ar" => 2, #f554ffa
"ca" => 16, #f5f5ffńska
"cs" => 4, #f3f1f5
"da" => 6, #duńska
"de" => 20, #fff1f1cka
"en" => 1, #f5fff1ska
"simple" => 27, #ffffffczona angielska
"eo" => 7, #f1f1f5nto
"es" => 12, #fffff5ńska
"et" => 8, #f1ffffńska
"eu" => 3, #45ffffska
"fr" => 10, #f0f5f3ska
"fy" => 11, #f0ffffska
"it" => 28, #włoska
"ja" => 15, #f5ffffńska
"ko" => 17, #fff1f5ńska
"la" => 18, #po łacińsku
"ms" => 19, #f5f5ffka
"nl" => 13, #fff1f2erska
"ia" => 14, #fff1ffingua
"no" => 21, #fffff1ka
"pt" => 22, #ffffffalska
"ru" => 23, #ffffffka
"sl" => 25, #słoweńska
"sh" => 24, #f1f4f3horwacka
"fi" => 9, #f0fff5
"sv" => 26, #fff1f2ka
"zh" => 5); #f3ffffńska
%aaa = ();
while(<>)
{
if(/^\[\[..:/)
{
s/\]\] /]]/g;
@a = split(/\]\]/);
if(length(@a))
{
pop(@a);
}
map(s/\[\[//g,@a);
for $y (@a)
{
@tmp = split(/:/, $y );
if( exists($zzz{$tmp[0]}))
{
$aaa{$y} = $zzz{$tmp[0]};
}
}
@sorted = sort { $aaa{$a} <=> $aaa{$b} } keys %aaa;
for $u1 (@sorted)
{
print "[[",$u1,"]]";
}
print "\n";
next;
}
print;
}
# vim:tw=78:ts=4:
|