my $col_width = ( sort { $b <=> $a } map { length } ( #sort lengths (keys %lists, map { @$_ } values %lists) ) )[0] + 2; #2 is the padding #### my %lists; my @amazon = qw(hot tropical humid wet); my @sahara = qw(hot hot tropical big); $lists{"The Amazon is"} = \@amazon; $lists{"The Sahara is"} = \@sahara;