From e2336d39165c9ae0c84618f4efb2ae30d1bd5807 Mon Sep 17 00:00:00 2001 From: Mischa POSLAWSKY Date: Sun, 22 Feb 2015 02:15:32 +0100 Subject: [PATCH] digraphs: mkdigraphlist: inline conversion of character details --- tools/mkdigraphlist | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/tools/mkdigraphlist b/tools/mkdigraphlist index 0714a2b..8a05fa4 100755 --- a/tools/mkdigraphlist +++ b/tools/mkdigraphlist @@ -23,13 +23,6 @@ $di = { %{$vim // {}}, %{$di}, %{$extra // {}} }; my $uninfo = do 'unicode-char.inc.pl' or warn "could not include unicode details: ", $@ // $!; -# convert info hashes into arrays of strings to output in display order -for my $row (values %{$uninfo}) { - my ($class, $name, $di, $html, $string) = @{$row}; - $row = [$name, $class]; - push @{$row}, '', $string if defined $string; -} - # output perl code of hash # (assume no backslashes or curlies, so we can just q{} w/o escaping) print "# automatically generated by $0\n"; @@ -41,7 +34,10 @@ printf '(map {$_=>0} qw{%s}),'."\n", join(' ', ); printf "q{%s}=>[%s],\n", $_, join(',', $di->{$_}, # original code point - (map {"'$_'"} @{ $uninfo->{ chr $di->{$_} } // [] }), # optional additional arguments + map {"'$_'"} + $uninfo->{ chr $di->{$_} }->[1], # name + $uninfo->{ chr $di->{$_} }->[0], # class + (map {('', $_)} $uninfo->{ chr $di->{$_} }->[4] // ()), # string ) for sort keys %{$di}; print "}\n"; -- 2.30.0