in reply to Sort - can't

Make that
chdir("$contentdir") or die "Couldn't chdir ..., "; opendir THISDIR, '.' or die "Couldn't opendir ..., "; my @submenu = readdir THISDIR or die "Nothing to readdir, "; close THISDIR; # really need a die here too :)
Then you got lost. You tried this:
($sub1, $sub2, $sub3) = split (/\_/, $_,3);
Except that $_ wasn't set by anything yet. Your directories are in @submenu, and split only works on one scalar (at a time).

Moreover, sort is redundant on scalars:

$sub3 = sort { $b <=> $a } $sub3;

Somehow you need to pick which of the @submenu entries you want to split (or perhaps all?), and then what it is you're sorting...

-QM
--
Quantum Mechanics: The dreams stuff is made of