11 if (/^([^:]+):\s*(.*)$/) {
12 my ($name, $value) = ($1, $2);
14 if ($name eq 'startchar') {
18 if ($name eq 'encoding') {
19 my ($enc) = split (/\s+/, $value, 2);
20 $encmap{$enc} = $in_char;
21 $chardata{$in_char}{'_enc'} = $enc;
23 $chardata{$in_char}{$name} = $value;
27 $asked_char = $ARGV[0];
28 $asked_char = '' if (!defined $asked_char);
32 foreach $enc (sort { $a <=> $b } keys %encmap) {
33 my $char = $encmap{$enc};
34 printf '%-16s %5d', $char, $enc;
36 my $kern = $chardata{$char}{'kernsslifo'};
38 my @kern = split (/\s+/, $kern);
40 for (my $i = 0; $i < @kern; $i += 4) {
41 my $kern_char = $encmap{$kern[$i]};
42 $kern_str .= ' ' . $kern_char . '[' . sprintf('%x', $kern[$i]) . '] (' . $kern[$i+1] . ')';
43 if ($asked_char eq $kern_char) {
44 $left_kern .= ' ' . $char . '[' . sprintf('%x', $enc) . '] (' . $kern[$i+1] . ')';
48 if ($asked_char eq $char) {
49 $right_kern = $kern_str;
57 print $asked_char, "\n";
58 print "right kern chars:", $right_kern, "\n";
59 print " left kern chars:", $left_kern, "\n";