diff --git a/stuff/gopher-server.pl b/stuff/gopher-server.pl index 5c5cb3b2..2401020c 100755 --- a/stuff/gopher-server.pl +++ b/stuff/gopher-server.pl @@ -216,6 +216,14 @@ sub serve_page_html { exit; } +sub newest_first { + my ($A, $B) = ($a, $b); + if ($A =~ /^\d\d\d\d-\d\d-\d\d/ and $B =~ /^\d\d\d\d-\d\d-\d\d/) { + return $B cmp $A; + } + $A cmp $B; +} + sub serve_tag { my $self = shift; my $tag = shift; @@ -231,7 +239,7 @@ sub serve_tag { print "i\r\n"; } print "iSearch result for tag $tag:\r\n"; - for my $id (OddMuse::TagFind($tag)) { + for my $id (sort newest_first OddMuse::TagFind($tag)) { print join("\t", "1" . OddMuse::NormalToFree($id), "$id/menu",