X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/60876481060ad63e3a2e450d18351e01f850cce6..28151a28db84c6d6018232f36c0003ecd562b3f0:/cc.plp diff --git a/cc.plp b/cc.plp index 57a8d91..8473241 100644 --- a/cc.plp +++ b/cc.plp @@ -1,21 +1,14 @@ -<: -use utf8; -use strict; -use warnings; -use open IO => ':utf8'; - -our $VERSION = 'v1.0'; - -$header{content_type} = 'text/html; charset=utf-8'; +<(common.inc.plp)><: + our $VERSION = 'v1.0'; :> + country code cheat sheet - - +<:= stylesheet(qw'light dark mono red') :> @@ -33,10 +26,10 @@ sub quote { } { - printf ''; - print ''; + printf '
'; + print ''; for my $section (qw{thead}) { - print "<$section>
↱"; + print "<$section>
↳"; print '', $_ for 'a' .. 'z'; print "\n"; } @@ -49,11 +42,32 @@ sub quote { print $code =~ /^x|^q[m-z]|^aa|^zz/ ? '' : ''; next; }; - $code = $country->[2] if defined $country->[2]; - my $img = sprintf '%s', $code, $code - if -e "flag/$code.png"; + my ($name, $class, $short, $ref) = @$country; + $ref ||= $code; + local $_ = $ref; + if (exists $get{show}) { + my $img = "flag/$ref.png"; + $_ = sprintf '%s', $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])(\w{2,})/$1./g; # abbreviate (at consonant) + $_ = quote($_); + } + $name =~ s/([^,]*), (.*)/$2 $1/; printf "\n".'%s', - $img ? 'X '.$country->[1] : '', quote($country->[0]), $img; + $_ ? 'X '.$class : '', quote("$code: $name"), $_; } print "\n"; } @@ -68,21 +82,33 @@ sub quote { africa europe asia - oceania antarctica + oceania south america north america - reserved + reserved user-assigned
+ +
+ +