latin: 5-point tactile alphabet
[sheet.git] / writing-latn.inc.pl
index 7f342b145e694293b8c46ebc6af943b904cd5a2f..bfb14de6f8e7abf77310a772b61bed316eeb2cf5 100644 (file)
@@ -27,6 +27,21 @@ my %C = qw(red #EC1C24  blue #3953A3  yellow #F9EC31  black #231F20);
        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{
        .- -... -.-. -.. . ..-. --. .... .. .--- -.- .-.. --
        -. --- .--. --.- .-. ... - ..- ...- .-- -..- -.-- --..
@@ -36,12 +51,12 @@ my %C = qw(red #EC1C24  blue #3953A3  yellow #F9EC31  black #231F20);
        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"/>
@@ -83,7 +98,6 @@ my %C = qw(red #EC1C24  blue #3953A3  yellow #F9EC31  black #231F20);
 
                <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="
@@ -155,8 +169,8 @@ my %C = qw(red #EC1C24  blue #3953A3  yellow #F9EC31  black #231F20);
                !$_ ? '-' : 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],
@@ -175,10 +189,10 @@ my %C = qw(red #EC1C24  blue #3953A3  yellow #F9EC31  black #231F20);
        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>',
                ),
@@ -210,7 +224,7 @@ my %C = qw(red #EC1C24  blue #3953A3  yellow #F9EC31  black #231F20);
 '<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,
@@ -239,7 +253,7 @@ my %C = qw(red #EC1C24  blue #3953A3  yellow #F9EC31  black #231F20);
                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
@@ -253,7 +267,7 @@ my %C = qw(red #EC1C24  blue #3953A3  yellow #F9EC31  black #231F20);
        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 //, $_