From: Mischa POSLAWSKY Date: Sat, 8 Apr 2017 01:08:48 +0000 (+0200) Subject: charset: assume parent visibility X-Git-Tag: v1.10~220 X-Git-Url: http://git.shiar.nl/sheet.git/commitdiff_plain/abfe2b33cdf66bbed85b33b3c8b8103201c544f9 charset: assume parent visibility Hack to hide indirect parents, usually related iso numbers. --- diff --git a/charset.plp b/charset.plp index 309139e..9d7375d 100644 --- a/charset.plp +++ b/charset.plp @@ -137,18 +137,21 @@ sub tabinput { my @parents = @{ $INHERIT->{$input} || [] }; - if (my ($parent, $part) = pairfirst { $visible->{$a} } @parents) { + if (my ($parent, $part) = pairfirst { exists $visible->{$a} } @parents) { $row{parent} = $parent; $params = $part; + $_ eq $part or $params = 128 for $visible->{$parent} // (); } - elsif ($visible->{ascii}) { - $row{parent} = $parents[0] || 'ascii'; + elsif (exists $visible->{ascii}) { + $row{parent} = $parents[0]; $params = $parents[1] || 128; + exists $visible->{$_} or $visible->{$_} = $params for $row{parent}; $params = 128 if $params >= 128; # ascii offset at most } elsif (@parents) { $row{parent} = $parents[0]; } + exists $visible->{$_} or $visible->{$_} = $params // 0 for $row{parent}; } if (defined $params and $params =~ m/^ (\d+) (-\d+)? /x) { @@ -209,7 +212,7 @@ sub tabinput { } $visible->{ascii} = # assume common base - $visible->{ $row{set} } = 1; + $visible->{ $row{set} } = undef; } } else {