OK, see this? This is why people say uncharitable things about Perl: for (@cmd) { next unless grep /^\Q$cmd\E$/, split(" ", $_->[1]); $cmd_data = $_; push @{$cmd_data->[3]}, ["filter", undef, undef, \&parse_filter] if $_->[1] =~/\bdescribe/; for (@{$cmd_data->[3]}) { for (split(" ", $_->[0])) { (my $key = $_) =~ s/-/_/g; $keyword{$key} = undef; } } last; } It doesn’t matter whose code this is. Suffice it to say that it is a crucial part of a publically-available, fairly popular program, was last edited in 2011, is standing in the way of my getting something accomplished today. …