latin: d'ni numerals svg row
authorMischa POSLAWSKY <perl@shiar.org>
Tue, 11 Apr 2017 01:38:59 +0000 (03:38 +0200)
committerMischa POSLAWSKY <perl@shiar.org>
Mon, 22 May 2017 15:55:28 +0000 (17:55 +0200)
Remarkable for being a regular base5 counting system exactly matching all
26 letters.

SVG constructed from shapes inspired by:
<http://linguists.riedl.org/old/more-numbers.htm> and
<http://www.omniglot.com/conscripts/dni.htm>.

writing-latn.inc.pl

index f313a315cc56d1d28aaae5e07f26fd823c23c0d0..babdb40f74f4f7b877a20d0231dc2ca69b197ad8 100644 (file)
@@ -1,3 +1,4 @@
+use 5.014;
 use utf8;
 use List::Util qw( pairs );
 
 use utf8;
 use List::Util qw( pairs );
 
@@ -325,6 +326,29 @@ my $U = 0;  # optional unicode alternatives
        ), # 0 for space
        '', 1, 3  # start/end
 ],
        ), # 0 for space
        '', 1, 3  # start/end
 ],
+"D'ni" => [
+       map {
+               state $window = 'M-.5,-.5H12.5V12.5H-.5Z';
+               state $v = [
+                       '',
+                       'M0,6 12,6',
+                       'M0,12 Q6,6 12,12',
+                       'M0,6 6,12 12,6',
+                       'M3,0 3,6 12,6',
+                       'M0,0 12,12 M0,12 12,0', # cross
+                       'M5.5,6 h1', # dot
+               ];
+               state $h = [
+                       '',
+                       'M6,0 6,12',
+                       'M0,0 Q6,6 0,12',
+                       'M6,-.5 0,6 6,12.5',
+                       'M6,12 6,3 12,3',
+               ];
+               sprintf '<svg width="20" height="20" viewBox="-.5 -.5 13 13"><path d="%s"/></svg>',
+                       $window . ($h->[$_ % 5] . $v->[$_ / 5] || $v->[6]);
+       } 0 .. 5*5
+],
 'Pigpen' => [
        map {
                qq(<svg width="12" height="12" viewBox="-.5 -.5 7 7">$_</svg>)
 'Pigpen' => [
        map {
                qq(<svg width="12" height="12" viewBox="-.5 -.5 7 7">$_</svg>)