git.shiar.nl
/
sheet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
latin: improve word wrapping for tap, chromacons
[sheet.git]
/
writing-latn.inc.pl
diff --git
a/writing-latn.inc.pl
b/writing-latn.inc.pl
index 640dd9bd32c75d2ea5d0043b513779ea92dfbbd5..aa0e4448bb76d643e494bfe748d98ff857ac2334 100644
(file)
--- a/
writing-latn.inc.pl
+++ b/
writing-latn.inc.pl
@@
-1,14
+1,20
@@
use 5.014;
use utf8;
use 5.014;
use utf8;
+use warnings;
use List::Util qw( pairs pairmap sum );
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 = (
my $U = 0; # optional unicode alternatives
my @wrapstyle = (
- 'td { white-space: normal; word-spacing:
5
em }', # force line break between words
+ 'td { white-space: normal; word-spacing:
10
em }', # force line break between words
'.sample { word-spacing: 0 }',
'.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 = (
);
my $spacestyle = '.sample span { margin-right: 0.5ex }'; # separate multiple letters
my @tapstyle = (
@@
-181,13
+187,18
@@
edgewrite => {
list => [
map { '<svg width="14" height="14" viewBox="-1 -1 10 10">'.$_.'</svg>' }
map {
list => [
map { '<svg width="14" height="14" viewBox="-1 -1 10 10">'.$_.'</svg>' }
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('<circle cx="%s" cy="%s" r="1"/>', @coords[0, 1]) . # start point
sprintf('<circle cx="%s" cy="%s" r="1"/>', @coords[0, 1]) . # start point
- sprintf('<path d="M%s"/>', "@coords")
+ sprintf('<path d="M%s"/>', 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(
}
# corners (0..3) clockwise from top-left in order
qw(
- 213 0232 1023 1323
0102
3 102 10132 0213 02 132 02123 023 20313 2031
+ 213 0232 1023 1323
10
3 102 10132 0213 02 132 02123 023 20313 2031
10231 0102 10131 201 1032 013 0231 021 02131 0312 0313 0123 01
)
],
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
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 2331112
0
)],
},
rm4scc => {
)],
},
rm4scc => {
@@
-490,7
+501,7
@@
rgbmap => {
],
list => [
map { disphues($_, [0, 240, 120], 1) } # Red, Blue, Green
],
list => [
map { disphues($_, [0, 240, 120], 1) } # Red, Blue, Green
- 0 .. 3*3*3 -
1
+ 0 .. 3*3*3 -
2
],
},
cmymap => {
],
},
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
# 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 0
000
),
],
},
chromacons => {
),
],
},
chromacons => {
+# style => '.sample { word-break: break-all }',
list => [
# Colour Alphabet by Paul Green-Armytage (2010)
map {
sprintf('<span%s>%s</span>',
!!$_ && sprintf(' style="background:#%s" title="%s"', split /:/),
list => [
# Colour Alphabet by Paul Green-Armytage (2010)
map {
sprintf('<span%s>%s</span>',
!!$_ && sprintf(' style="background:#%s" title="%s"', split /:/),
- chr(8195)
, # em space
+ chr(8195)
. (!$_ && chr(8203)) # em space (plus zwsp for spaces)
);
}
qw{
);
}
qw{