X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/b6c43cc2c8ee0aabb2c84a79625a982e0e3f94b4..ba377adce826b1c5956aa225c04ec2fe0a58db32:/writing-latn.inc.pl diff --git a/writing-latn.inc.pl b/writing-latn.inc.pl index 28626b0..1666c6b 100644 --- a/writing-latn.inc.pl +++ b/writing-latn.inc.pl @@ -3,9 +3,9 @@ use utf8; sub disptap { return map { m/\A(-?)(\d)(\d)/; - sprintf('%s ', - #TODO: prepend $1 - join "
\n", '•' x $2, '•' x $3, + sprintf('%s
%s', + ' class=ex' x !!$1, + '·' x $2, '·' x $3, ); } @_; } @@ -16,7 +16,7 @@ my %C = qw(red #EC1C24 blue #3953A3 yellow #F9EC31 black #231F20); 'Uppercase' => [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 }], 'Lowercase' => [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 }], 'Sütterlin' => [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' => [ +'Sutton ASL' => [ # American manual alphabet in Sutton (U+1D800+) notation map { pack 'W*', map { hex "1D$_" } unpack '(A3)*', $_ } qw{ 8F7a9c 847a9c 86Da9c 801a9c 84Aa9c @@ -37,7 +37,7 @@ my %C = qw(red #EC1C24 blue #3953A3 yellow #F9EC31 black #231F20); })], '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 + 34 41 42 -13 43 44 15 51 52 53 25 -31 54 })], 'Maritime flags' => [ # International Code of Signals, SVG fills @@ -70,7 +70,7 @@ my %C = qw(red #EC1C24 blue #3953A3 yellow #F9EC31 black #231F20); - + @@ -141,12 +141,11 @@ my %C = qw(red #EC1C24 blue #3953A3 yellow #F9EC31 black #231F20); local $_ = $_; s/[1-4]\K(?=[4-9])/ /; tr/1-9/↙←↖↑↗→↘↓/; - s{(.)(?=.)}{$1} - or s/^// and $_ .= ''; + s{(\S)(?=.)}{$1}; $_ } qw( - 1 2 3 4 5 6 7 21 31 46 14 15 16 17 23 + 1 2 3 4 5 6 7 21 31 46 14 51 16 17 23 24 25 26 27 34 35 47 56 57 36 67 ) ], @@ -156,8 +155,8 @@ my %C = qw(red #EC1C24 blue #3953A3 yellow #F9EC31 black #231F20); !$_ ? '-' : sprintf( join('', '', - '', - '', + '', + '', '', ), ['6', '3v3', '9v-3']->[$pl], @@ -176,10 +175,10 @@ my %C = qw(red #EC1C24 blue #3953A3 yellow #F9EC31 black #231F20); map { !$_ ? '-' : sprintf join('', '', - '', + '', (map {( - qq(), - qq(), + qq(), + qq(), )} 3, 7, 14), '', ), @@ -200,10 +199,18 @@ my %C = qw(red #EC1C24 blue #3953A3 yellow #F9EC31 black #231F20); 201112 102112 202111 101212 201211 102211 ) ], +'Code 128' => [ + map { tr/1-3-/❘❙❚ /r } + # bar widths (1-3) followed by space of width 1 (implied) or 3 (-) + qw( + 11-2 1-12 1-1-2 12-1 1-21 1-2-1 21-1 2-11 2-1-1 123 12-3 1-23 132 + 13-2 1-32 332 21-3 2-13 231 23-1 233 312 31-2 3-12 321 32-1 + ) +], 'RM4SCC' => [ map { sprintf '' - . '', + . '', join ' m2', map { sprintf ',%dv%dm0,-%d', ($_ & 1 ? 0 : 2), 2 + ($_ & 2) + ($_ & 1) * 2, @@ -231,8 +238,8 @@ my %C = qw(red #EC1C24 blue #3953A3 yellow #F9EC31 black #231F20); s/(?:h|m[^0]).*?h\K/-/; m/h/ or s/v/l3,/g; m/v/ or s/h([^h]*)/l$1,3/g; - my $dot = s/\.// && qq(); - qq($dot) + my $dot = s/\.// && qq(); + qq($dot) } qw( Hvh vhv vh hvh vhvh Hhvh hv Vvhv Hhv @@ -246,7 +253,7 @@ my %C = qw(red #EC1C24 blue #3953A3 yellow #F9EC31 black #231F20); map { sprintf '' . '', - ' stroke="black" stroke-linecap="round" stroke-linejoin="round" fill="none"', + ' stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" fill="none"', 'h.5v.5h-.5v-.5', # start anchor map { ['M', 'h0M', 'L']->[$_] } split //, $_