X-Git-Url: http://git.shiar.net/sheet.git/blobdiff_plain/98caa4d70a2ac467ce0786f2baf3dcae6ae667d4..2f80fb27bdfa2a66851d44ac6c66a64a3b82c97d:/writing-latn.inc.pl diff --git a/writing-latn.inc.pl b/writing-latn.inc.pl index e904ddc..76b2f6c 100644 --- a/writing-latn.inc.pl +++ b/writing-latn.inc.pl @@ -15,10 +15,10 @@ my @wrapstyle = ( 'td { white-space: normal; word-spacing: 10em }', # force line break between words '.sample { word-spacing: 0 }', - '.sample span { margin-right: 1ex; white-space: nowrap; display: inline-block }', + '.sample svg { margin-right: 1ex; white-space: nowrap; display: inline-block }', # larger space between letters ); -my $spacestyle = '.sample span { margin-right: 0.5ex }'; # separate letters +my $spacestyle = '.sample svg { margin-right: 0.5ex }'; # separate letters my @tapstyle = ( @wrapstyle, '{ line-height: 1ex }', @@ -60,6 +60,43 @@ sub dispdomino { return $prefix . chr(0x1F031 + ($dots[0] * 7) + $dots[1]); } +sub dispblock { + my $code = shift; + my ($prefix, $shape, $rotate) = $code =~ m/\A(-?)(\w)(\d?)/ + or return $code; + my %path = ( + S => 'm0,1h1v-1h1', + Z => 'm0,0h1v1h1', + L => 'm0,0v2h1', + v => 'm0,0v1h1', + J => 'm1,0v2h-1', + T => 'm0,0h2.5h-1.5v1', + O => 'm0,0h1v1h-1', + I => 'm0,1h3', + i => 'm0,1h2', + o => 'm0,1h1', + ); + my %col = qw( + S 120 Z 0 J 240 L 30 T 300 O 60 I 180 + v 45,50% i 165,50% o 165,0% + ); + s/\z(?' + . '', + $code eq 'I' ? 4 : $code =~ /T3|[LJO]$|[Iio]1/ ? 2 : 3, + @gaps ? qq( class="@gaps") : '', + $path{$shape}, "hsl($col{$shape},50%)", join('', + $rotate && sprintf(' transform="rotate(%s 1 1)"', $rotate * 90), + $prefix && ' style="opacity:.5"', + ), + ); +} + sub dispbar { my $code = shift or return ''; @@ -121,7 +158,7 @@ roman => { name => 'Old Roman Cursive', style => [ 'svg path { stroke-linecap: round; stroke-linejoin: round }', - '.sample span { margin-right: -10px }', + '.sample svg { margin-right: -10px }', ], list => [ map { @@ -334,6 +371,20 @@ domino => { 44 50 51 52 53 54 55 60 61 62 63 64 65 }], }, +tetromino => { + style => [ + 'svg path { stroke-linecap: square }', + '.sample .gapl1 + .gapr1 { margin-left: -6.3px }', + ], + name => 'Tetrominos', + list => [map { dispblock($_) } qw{ + T2 T1 I T3 + i L1 J L3 + o1 I1 L2 L -S1 Z1 + O J2 v2 -J3 S T + J1 v1 v v3 i1 Z + }], +}, cards => { style => 'td { font-family: Symbola, "DejaVu Sans", serif, sans }', list => [( @@ -598,7 +649,7 @@ dni => { name => "D'ni", style => [ 'svg { border: 1px solid currentColor }', - '.sample span + span svg { border-left: 0 }', + '.sample svg + svg { border-left: 0 }', ], list => [ map { @@ -681,7 +732,10 @@ nyctographs => { }, chromacons => { title => 'Colour Alphabet by Paul Green-Armytage (2010)', -# style => '.sample { word-break: break-all }', + style => [ + #'.sample { word-break: break-all }', + '.sample { background: white }', + ], list => [ map { sprintf('%s',