latin: tap code function per cell like dispbar
authorMischa POSLAWSKY <perl@shiar.org>
Tue, 11 Apr 2017 20:20:23 +0000 (22:20 +0200)
committerMischa POSLAWSKY <perl@shiar.org>
Mon, 22 May 2017 15:55:29 +0000 (17:55 +0200)
writing-latn.inc.pl

index c026c0fcd0227dcb77b278a05e3b820099ad6f67..59218023b9cce42bc44ffc27c36bab3daef85036 100644 (file)
@@ -6,12 +6,9 @@ my %C = qw(red #EC1C24  blue #3953A3  yellow #F9EC31  black #231F20);
 my $U = 0;  # optional unicode alternatives
 
 sub disptap {
-       return map {
-               !m/\A(-?)(\d)(\d)/ ? $_ :
-               $1.join(' ',
-                       '·' x $2, '·' x $3,
-               );
-       } @_;
+       my $code = shift;
+       $code =~ m/\A(-?)(\d)(\d)/ or return $code;
+       return $1 . join(' ', '·' x $2, '·' x $3);
 }
 
 sub dispbar {
@@ -106,14 +103,14 @@ sub dispbar {
        .- -... -.-. -.. . ..-. --. .... .. .--- -.- .-.. --
        -. --- .--. --.- .-. ... - ..- ...- .-- -..- -.-- --..
 }],
-'Tap code' => [disptap(qw{
+'Tap code' => [map { disptap($_) } qw{
        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
-})],
-'Short Tap' => [disptap(qw{
+}],
+'Short Tap' => [map { 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
-})],
+}],
 'Cards' => [(
        map { chr(0x1F0A0 + $_), sprintf('<b>%s</b>', chr(0x1F0B0 + $_)) }  # spades, hearts
        1 .. 11, 13, 14  # A 2-10 J Q K