(common.inc.plp)><:
Html({
title => 'country code cheat sheet',
version => 'v1.0',
description =>
"Table of ISO-3166-2 country codes with the names of reserved territories.",
keywords => [qw'country code cc tld territory land table'],
stylesheet => [qw'light dark circus mono red'],
});
:>
ISO-3166-2α2 Country codes
<:
my $cc = do 'countries.inc.pl';
{
printf '';
print '';
for my $section (qw{thead}) {
print "<$section>↳";
print ' | ', $_ for 'a' .. 'z';
print "\n";
}
print ' |
';
for my $row ('a' .. 'z') {
print '', $row;
for my $col ('a' .. 'z') {
my $code = $row . $col;
my $country = $cc->{$code} or do {
print $code =~ /^x|^q[m-z]|^aa|^zz/ ? ' | ' : ' | ';
next;
};
my ($name, $class, $short, $ref) = @$country;
$ref ||= $code;
local $_ = $ref;
if (exists $get{show}) {
my $img = "flag/$ref.png";
$_ = sprintf '', $img, $ref if -e $img;
}
else {
$_ = $short || $name;
s/,.*//;
s/(?<=.)\(.*\)\s*//;
s/ republic\b//gi;
s/ islands?\b//gi;
s/\bthe //g;
s/ and / & /g and s/(?<=.)[a-z ]+//g;
s/\bsaint /st /gi;
s/South(?:ern)? /S-/g;
s/North(?:ern)? /N-/g;
s/New /n./g;
s/(\S)(\S+)-/$1-/g; # strip most chars preceding dash
s/(\S{4}[b-df-hj-np-tv-xz])((?%s',
$_ ? 'X '.$class : '', EscapeHTML("$code: $name"), $_;
}
print "\n";
}
print " |
---|
\n";
}
:>
africa
| europe
| asia
| antarctica
| oceania
| south america
| north america
| reserved
| user-assigned
|
- show
<:= exists $get{show} ? 'flag images' : 'english names' :><:=
!exists $get{show} && ' by default' :>
- default style is
<:= defined $get{style} && 'set to ' :><:= $style :>