use utf8;
sub disptap {
return map {
m/\A(-?)(\d)(\d)/;
sprintf('%s ',
#TODO: prepend $1
join "
\n", '•' x $2, '•' x $3,
);
} @_;
}
my %C = qw(red #EC1C24 blue #3953A3 yellow #F9EC31 black #231F20);
(
latnuc => [qw{ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z }],
latnlc => [qw{ a b c d e f g h i j k l m n o p q r s t u v w x y z }],
latfsuet => [qw{ a b c d e f g h i j k l m n o p q r ſ s t u v w x y z }],
asl => [
map { pack 'W*', map { hex "1D$_" } unpack '(A3)*', $_ } qw{
8F7a9c 847a9c 86Da9c 801a9c 84Aa9c
8CEa9c 8F0 815aa2 892a9c 892a9c9A2aac
840a9c 8DCa9c 88Da9c
819a9c 876a9c 840a9caA1 8F0a9caA1 81Aa9c
903a9c 8FBa9c 815a9c 80Ea9c 887a9c
806a9c 89Aa9c 800a9c945aaa
}],
brai => [qw{ ⠁ ⠃ ⠉ ⠙ ⠑ ⠋ ⠛ ⠓ ⠊ ⠚ ⠅ ⠇ ⠍ ⠝ ⠕ ⠏ ⠟ ⠗ ⠎ ⠞ ⠥ ⠧ ⠺ ⠭ ⠽ ⠵ }],
morse => [map {tr/.-/‧‑/r} qw{
.- -... -.-. -.. . ..-. --. .... .. .--- -.- .-.. --
-. --- .--. --.- .-. ... - ..- ...- .-- -..- -.-- --..
}],
tap => [disptap(qw{
11 12 13 14 15 21 22 23 24 -24 25 31 32
33 34 35 41 42 43 44 45 51 52 53 54 55
})],
taps => [disptap(qw{
11 12 13 14 21 22 23 24 31 -31 -13 32 33
34 41 42 -13 43 44 15 51 52 53 -25 -31 54
})],
ics => [
map { '' }
split /\n\n/, qq{
},
],
sem => [
map {
local $_ = $_;
s/[1-4]\K(?=[4-9])/ /;
tr/1-9/↙←↖↑↗→↘↓/;
s{(.)(?=.)}{$1}
or s/^// and $_ .= '';
$_
}
qw(
1 2 3 4 5 6 7 21 31 46 14 15 16 17 23
24 25 26 27 34 35 47 56 57 36 67
)
],
code39 => [map { tr/012/ ❘❙/r } qw{
211012 121012 221011 112012 212011 122011 111022 211021 121021 112021
211102 121102 221101 112102 212101 122101 111202 211201 121201 112201
201112 102112 202111 101212 201211 102211
}],
rm4scc => [
map { sprintf
'',
join ' m2',
map { sprintf ',%dv%dm0,-%d',
($_ & 1 ? 0 : 2), 2 + ($_ & 2) + ($_ & 1) * 2,
($_ & 1 ? 0 : 2) + 2 + ($_ & 2) + ($_ & 1) * 2,
}
split //, $_
}
qw(
2121 2301
0132 0312 0330 2112 2130 2310
1023 1203 1221 3003 3021 3201
1032 1212 1230 3012 3030 3210
1122 1302 1320 3102 3120 3300
)
],
pigpen => [qw( ᒧ ᑌ ᒪ ᑐ □ ᑕ ᒣ ᑎ ᒥ ᒲ ᕫ ᒷ ᕭ 🞔 ᕮ ᒬ ᕬ ᒯ ᐯ ᐳ ᐸ ᐱ ᐁ ᐅ ᐊ ᐃ )],
wingdings => [qw{ ✌ 👌 👍 👎 ☜ ☞ ☝ ☟ ✋ ☺ 😐 ☹ 💣 ☠ ⚐ 🏱 ✈ ☼ 💧 ❄ 🕆 ✞ 🕈 ✠ ✡ ☪ }],
colour => [
map { sprintf '%s', split(/:/, $_), chr(8195) }
qw{
F0A3FF:Amethyst 0075DC:Blue 993F00:Caramel 4C005C:Damson 191919:Ebony
005C31:Forest 2BCE48:Green FFCC99:Honeydew 808080:Iron 94FFB5:Jade
8F7C00:Khaki 9DCC00:Lime C20088:Mallow
003380:Navy FFA405:Orpiment FFA8BB:Pink 426600:Quagmire FF0010:Red
5EF1F2:Sky 00998F:Turquoise E0FF66:Uranium 740AFF:Violet 990000:Wine
FFFF80:Xanthin FFFF00:Yellow FF5005:Zinnia
},
],
);