latin: rm4scc circumfix
[sheet.git] / writing-latn.inc.pl
index 43b77b341f541bf442e1c793bdd958ff14696e67..f313a315cc56d1d28aaae5e07f26fd823c23c0d0 100644 (file)
@@ -16,7 +16,7 @@ my $U = 0;  # optional unicode alternatives
 (
 '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 }],
 (
 '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 }],
+'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 }],
 'Old Roman Cursive' => [
        map { m/^(-?)(\w.*)/ ? $1.'<svg width="20" height="20" viewBox="0 0 12 20"><path d="'.$2.'"/></svg>' : $_ }
        "m2,4 c1,2 8,9 8,9 M2,15 6,9",
 'Old Roman Cursive' => [
        map { m/^(-?)(\w.*)/ ? $1.'<svg width="20" height="20" viewBox="0 0 12 20"><path d="'.$2.'"/></svg>' : $_ }
        "m2,4 c1,2 8,9 8,9 M2,15 6,9",
@@ -87,7 +87,7 @@ my $U = 0;  # optional unicode alternatives
        11 12 13 14 15 21 22 23  > 24 25 31 32
        33 34 35 41 42 43 44 45 51 52 53 54 55
 })],
        11 12 13 14 15 21 22 23  > 24 25 31 32
        33 34 35 41 42 43 44 45 51 52 53 54 55
 })],
-'Tap simplified' => [disptap(qw{
+'Short Tap' => [disptap(qw{
        11 12 13 14 21 22 23 20 > 31 -13 32 33
        30 41 42 -13 43 40 10 51 52 53 50 -31 -40
 })],
        11 12 13 14 21 22 23 20 > 31 -13 32 33
        30 41 42 -13 43 40 10 51 52 53 50 -31 -40
 })],
@@ -256,10 +256,12 @@ my $U = 0;  # optional unicode alternatives
 ],
 'Code 39' => [
        # ISO/IEC 16388
 ],
 'Code 39' => [
        # ISO/IEC 16388
-       map { tr/012/ ❘❙/r } qw(
+       map { !!$_ && tr/012/ ❘❙/r }
+       # bar widths (1-2) followed by space of width 1 (implied) or 2 (0)
+       qw(
                211012 121012 221011 112012 212011 122011 111022 211021 121021 112021
                211102 121102 221101 112102 212101 122101 111202 211201 121201 112201
                211012 121012 221011 112012 212011 122011 111022 211021 121021 112021
                211102 121102 221101 112102 212101 122101 111202 211201 121201 112201
-               201112 102112 202111 101212 201211 102211                      102121
+               201112 102112 202111 101212 201211 102211        102121 0 101221
        )
 ],
 'Code 93' => [
        )
 ],
 'Code 93' => [
@@ -299,15 +301,19 @@ my $U = 0;  # optional unicode alternatives
        )
 ],
 '<abbr title="Royal Mail 4-State Customer Code">RM4SCC</abbr>' => [
        )
 ],
 '<abbr title="Royal Mail 4-State Customer Code">RM4SCC</abbr>' => [
-       map { sprintf
-               '<svg width="20" height="20" viewBox="0 0 8 6">'
-               . '<path d="M1%s"/></svg>',
-               join ' m2',
-               map { sprintf ',%dv%dm0,-%d',
-                       ($_ & 1 ? 0 : 2),  2 + ($_ & 2) + ($_ & 1) * 2,
-                       ($_ & 1 ? 0 : 2) + 2 + ($_ & 2) + ($_ & 1) * 2,
-               }
-               split //
+       map {
+               my $len = length $_;
+               !$len ? '' : sprintf(
+                       '<svg width="%d" height="20" viewBox="0 0 %d 6">'
+                       . '<path d="M1%s"/></svg>',
+                       $len * 5, $len * 2,
+                       join ' m2',
+                       map { sprintf ',%dv%dm0,-%d',
+                               ($_ & 1 ? 0 : 2),  2 + ($_ & 2) + ($_ & 1) * 2,
+                               ($_ & 1 ? 0 : 2) + 2 + ($_ & 2) + ($_ & 1) * 2,
+                       }
+                       split //
+               );
        }
        qw(
                                    2121 2301
        }
        qw(
                                    2121 2301
@@ -316,7 +322,8 @@ my $U = 0;  # optional unicode alternatives
                1032 1212 1230 3012 3030 3210
                1122 1302 1320 3102 3120 3300
                0033
                1032 1212 1230 3012 3030 3210
                1122 1302 1320 3102 3120 3300
                0033
-       ) # 0 for space
+       ), # 0 for space
+       '', 1, 3  # start/end
 ],
 'Pigpen' => [
        map {
 ],
 'Pigpen' => [
        map {