print '<table id="rows" class="keys">'."\n\n";
+print_row:
for (my $row = -1; $row <= $#{ $keyrows{$self->{map}} }; $row++) {
my $keyrow = $row < 0 ? [["\e"]] : $keyrows{$self->{map}}->[$row];
+# grep {
+# defined $self->{def}->{''}->{$_} or defined $self->{def}->{g}->{$_}
+# } map { @{$_} } @{$keyrow} or next;
+
printf qq{<tbody class="row row%d">\n}, $row+1;
for my $basemode (@modes) {
my @moderows = split /\s+/,
/* "keyboard" (list of keys) */
-#rows {margin-top: -5ex} /* top (esc) row fits besides header */
+.row0 {margin-top: -5ex} /* top (esc) row fits besides header */
.row2 {margin-left: 7em} /* row offsets relative to ~6em key width */
.row3 {margin-left: 8em}
.row4 {margin-left: 10em} /* should actually align to next key on row1 */