806a9c 89Aa9c 800a9c945aaa
}],
'Braille' => [qw{ ⠁ ⠃ ⠉ ⠙ ⠑ ⠋ ⠛ ⠓ ⠊ ⠚ ⠅ ⠇ ⠍ ⠝ ⠕ ⠏ ⠟ ⠗ ⠎ ⠞ ⠥ ⠧ ⠺ ⠭ ⠽ ⠵ }],
+'5-point Tactile' => [
+ map { '<svg width="9" height="12" viewBox="0 0 18 24">'.$_.'</svg>' }
+ map {
+ join '', map { sprintf '<circle cx="%d" cy="%d" r="4"/>',
+ !$_ ? 9 : $_ & 1 ? 4 : 14,
+ !$_ ? 12 : $_ < 3 ? 4 : 20,
+ } split //
+ }
+ qw{
+ 4 234 012 14 0 014 023 12
+ 02 024 0134 23 013 03 01 123
+ 0124 13 04 1 34 0123 134 0234
+ 034 124
+ }
+],
'Morse' => [map {tr/.-/‧‑/r} qw{
.- -... -.-. -.. . ..-. --. .... .. .--- -.- .-.. --
-. --- .--. --.- .-. ... - ..- ...- .-- -..- -.-- --..
33 34 35 41 42 43 44 45 51 52 53 54 55
})],
'Tap simplified' => [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
+ 11 12 13 14 21 22 23 20 31 -31 -13 32 33
+ 30 41 42 -13 43 40 10 51 52 53 50 -31 -40
})],
'Maritime flags' => [
# International Code of Signals, SVG fills
- map { '<svg width="20" height="20" viewBox="0 0 30 30">'.$_.'</svg>' }
+ map { '<svg width="20" height="20" viewBox="0 0 30 30">'.s/\n?\t+//gr.'</svg>' }
split /\n\n/, qq{
<path fill="$C{blue}" d="M0,0 h30 l-7.5,15 7.5,15 h-30 z"/>
<path fill="white" d="M0,0 h15 v30 h-15"/>
<path fill="white" d="M0,0 h30v30 h-30z"/>
<path fill="$C{blue}" d="M4,0h22l-11,11 M4,30h22l-11,-11 M0,4v22l11,-11 M30,4v22l-11,-11"/>
- <!--path fill="$C{blue}" d="M3,0h24l-12,12 M3,30h24l-12,-12 M0,3v24l12,-12 M30,3v24l-12,-12"/-->
<path fill="white" d="M0,0 h30v30 h-30z"/>
<path fill="$C{blue}" d="
!$_ ? '-' : sprintf(
join('',
'<svg width="20" height="20" viewBox="0 0 10 15">',
- '<path stroke="currentColor" d="M5,6 v7"/>',
- '<path stroke="currentColor" fill="none" d="M0,%s h10 %s" transform="rotate(%d 5 6)"/>',
+ '<path d="M5,6 v7"/>',
+ '<path d="M0,%s h10 %s" transform="rotate(%d 5 6)"/>',
'</svg>',
),
['6', '3v3', '9v-3']->[$pl],
map { !$_ ? '-' : sprintf
join('',
'<svg width="20" height="20" viewBox="0 0 8 18">',
- '<path stroke="currentColor" d="M4,1 v18"/>',
+ '<path d="M4,1 v18"/>',
(map {(
- qq(<path stroke="currentColor" d="M0 $_ h4" transform="rotate(%d 4 $_)"/>),
- qq(<path stroke="currentColor" d="M4 $_ h4" transform="rotate(-%d 4 $_)"/>),
+ qq(<path d="M0 $_ h4" transform="rotate(%d 4 $_)"/>),
+ qq(<path d="M4 $_ h4" transform="rotate(-%d 4 $_)"/>),
)} 3, 7, 14),
'</svg>',
),
'<abbr title="Royal Mail 4-State Customer Code">RM4SCC</abbr>' => [
map { sprintf
'<svg width="20" height="20" viewBox="0 0 8 6">'
- . '<path stroke="currentColor" d="M1%s"/></svg>',
+ . '<path d="M1%s"/></svg>',
join ' m2',
map { sprintf ',%dv%dm0,-%d',
($_ & 1 ? 0 : 2), 2 + ($_ & 2) + ($_ & 1) * 2,
m/h/ or s/v/l3,/g;
m/v/ or s/h([^h]*)/l$1,3/g;
my $dot = s/\.// && qq(<circle cx="3" cy="3" r="1">);
- qq(<path stroke="currentColor" stroke-linecap="square" fill="none" d="$_"/>$dot)
+ qq(<path stroke-linecap="square" d="$_"/>$dot)
}
qw(
Hvh vhv vh hvh vhvh Hhvh hv Vvhv Hhv
map { sprintf
'<svg width="14" height="14" viewBox="-.5 -.5 5 5">'
. '<path%s d="M0,0%s %s4,0 %s4,4 %s0,4 %s0,0"/></svg>',
- ' stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" fill="none"',
+ ' stroke-linecap="round" stroke-linejoin="round"',
'h.5v.5h-.5v-.5', # start anchor
map { ['M', 'h0M', 'L']->[$_] }
split //, $_