X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/c84dfb2d32d8e278576b2ed4f9be1b50404e6a4b..0b57d5121c74fe18615499055e2f079c81c89001:/writing-latn.inc.pl diff --git a/writing-latn.inc.pl b/writing-latn.inc.pl index 640dd9b..aa0e444 100644 --- a/writing-latn.inc.pl +++ b/writing-latn.inc.pl @@ -1,14 +1,20 @@ use 5.014; use utf8; +use warnings; use List::Util qw( pairs pairmap sum ); -my %C = qw(red #EC1C24 blue #3953A3 yellow #F9EC31 black #231F20); +my %C = ( + red => '#EC1C24', + blue => '#3953A3', + yellow => '#F9EC31', + black => '#231F20', +); my $U = 0; # optional unicode alternatives my @wrapstyle = ( - 'td { white-space: normal; word-spacing: 5em }', # force line break between words + 'td { white-space: normal; word-spacing: 10em }', # force line break between words '.sample { word-spacing: 0 }', - '.sample span { margin-right: 1ex; white-space: nowrap }', # larger space between letters + '.sample span { margin-right: 1ex; white-space: nowrap; display: inline-block }', # larger space between letters ); my $spacestyle = '.sample span { margin-right: 0.5ex }'; # separate multiple letters my @tapstyle = ( @@ -181,13 +187,18 @@ edgewrite => { list => [ map { ''.$_.'' } map { - my @coords = map { $_ % 2 << 3, $_ >> 1 << 3 } split //; # x,y, + my @route = split //; + my @coords = map { $_ % 2 << 3, $_ >> 1 << 3 } @route; # x,y, sprintf('', @coords[0, 1]) . # start point - sprintf('', "@coords") + sprintf('', join ' ', map { + my $pos = join(',', @coords[$_*2, $_*2 + 1]); + $_ > 1 && $route[$_] == $route[$_ - 2] ? 'Q4,4 '.$pos.'L' : # curve back + $pos + } 0 .. $#route) } # corners (0..3) clockwise from top-left in order qw( - 213 0232 1023 1323 01023 102 10132 0213 02 132 02123 023 20313 2031 + 213 0232 1023 1323 103 102 10132 0213 02 132 02123 023 20313 2031 10231 0102 10131 201 1032 013 0231 021 02131 0312 0313 0123 01 ) ], @@ -450,7 +461,7 @@ code128 => { list => [map { dispbar($_) } qw( 111323 131123 131321 112313 132113 132311 211313 231113 231311 112133 112331 132131 113123 113321 133121 313121 211331 231131 213113 213311 - 213131 311123 311321 331121 312113 312311 212222 0 211412 2331112 + 213131 311123 311321 331121 312113 312311 212222 0 211412 23311120 )], }, rm4scc => { @@ -490,7 +501,7 @@ rgbmap => { ], list => [ map { disphues($_, [0, 240, 120], 1) } # Red, Blue, Green - 0 .. 3*3*3 - 1 + 0 .. 3*3*3 - 2 ], }, cmymap => { @@ -580,17 +591,18 @@ nyctographs => { # draw style (0=empty, 1=dot, 2=line connect) to right, down, left, up qw( 0010 0112 2022 2220 2000 2012 0122 0202 0020 0220 0012 0022 2202 - 0222 2222 0102 0200 2201 2002 2200 0100 0110 0120 2001 2010 2020 0 + 0222 2222 0102 0200 2201 2002 2200 0100 0110 0120 2001 2010 2020 0000 ), ], }, chromacons => { +# style => '.sample { word-break: break-all }', list => [ # Colour Alphabet by Paul Green-Armytage (2010) map { sprintf('%s', !!$_ && sprintf(' style="background:#%s" title="%s"', split /:/), - chr(8195), # em space + chr(8195) . (!$_ && chr(8203)) # em space (plus zwsp for spaces) ); } qw{