shithub: werc

Download patch

ref: 900fe672a53d126acaa2e4610b9fb4e0ff25c11b
parent: e52190ccd8d7e09454681b5fbcb968d2601281de
author: Uriel <u@berlinblue.org>
date: Mon Jun 28 05:06:45 EDT 2010

Make dir listings a bit prettier by replacing [-_] with spaces.

--- a/bin/corehandlers.rc
+++ b/bin/corehandlers.rc
@@ -75,9 +75,9 @@
     d=`{basename -d $1}
     if(~ $#d 0)
         d='/'
-    echo $d|sed 's,.*//,,g; s,/$,,; s,/, / ,g; s,.*,<h1 class="dir-list-head">&</h1> <ul class="dir-list">,'
+    echo $d|sed 's,.*//,,g; s,/$,,; s,/, / ,g; s/[\-_]/ /g; s,.*,<h1 class="dir-list-head">&</h1> <ul class="dir-list">,'
     # 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,.*/([^/]+/?)$,<li><a href="\1">\1</a></li>,'
+    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 "<li><a href=\""l"\">"n"</a></li>"; }'
     echo '</ul>'
 }
 
--