diff --git a/bin/corehandlers.rc b/bin/corehandlers.rc
index f471929..5f518d0 100644
--- a/bin/corehandlers.rc
+++ b/bin/corehandlers.rc
@@ -75,9 +75,9 @@ fn dir_listing_handler {
d=`{basename -d $1}
if(~ $#d 0)
d='/'
- echo $d|sed 's,.*//,,g; s,/$,,; s,/, / ,g; s,.*,
&
,'
+ echo $d|sed 's,.*//,,g; s,/$,,; s,/, / ,g; s/[\-_]/ /g; s,.*,&
,'
# Symlinks suck: '/.' forces ls to list the linked dir if $d is a symlink.
- ls -F $dir_listing_ls_opts $sitedir$d/. | sed $dirfilter$dirclean' s,.*/([^/]+/?)$,- \1
,'
+ ls -F $dir_listing_ls_opts $sitedir$d/. | sed $dirfilter$dirclean | awk '{match($0, "/[^/]*/?$"); l=substr($0, RSTART+1, RLENGTH-1);n=l; gsub(/[\-_]/, " ", n); print "- "n"
"; }'
echo '
'
}