[racket-dev] Potential search improvement

From: Jens Axel Søgaard (jensaxel at soegaard.net)
Date: Tue May 29 08:35:01 EDT 2012

2012/5/29 Eli Barzilay <eli at barzilay.org>:
> I have made a possibly useful improvement to the JS search code.
> It's not pushed, yet, but I dropped the revised JS code on the
> pre-built pages so you can try it out here:
>  http://pre.racket-lang.org/docs/html/search/
> and compare searches with the usual page:
>  http://docs.racket-lang.org/search/
> I'd appreciate people playing with it to find about potential problems
> with the ordering and possibly with different browsers.

I like it.

A quick note: I searched for "Scribble" and didn't get
the main manual. The reason is that is named:

     "Scribble: The Racket Documentation Tool  in scribble"

This case could be solved by renaming it:
     "Scribble - The Racket Documentation Tool  in scribble"

Or by stripping punctuation in manual titles. Stripping other
things than manual titles would be a bad idea (in case
actual identifiers were involved), but it it seems that
the manual titles doesn't contain any:


> The thing is that they used to be lumped to 2 groups with exact
> matches first.  Now I made each of these be in its own group, so
> there's a little more order.  To see an example that works nicely now
> try "splay".


I am undecided on the following:
Try a search for list. The results are a bunch of places where list
is exported from.

It would be nice to see the these more prominently displayed:

   List Filtering  in reference
   List Iteration  in reference
   List Iteration from Scratch  in guide
   List Operations  in reference

It won't take long, before 20 modules export list, and the
reference and guide results disappear from the front page.

Hmm. How about displaying a yellow box at the top
of the results saying "x hits from guide
and y hits from reference, click here to see them".
This way the guide and reference hits are "in your face"
for beginners".

The actual results for list:

list  provided from racket/base, racket
list  provided from r5rs
list  provided from rnrs/base-6
list  provided from lang/htdp-advanced
list  provided from lang/htdp-beginner
list  provided from lang/htdp-beginner-abbr
list  provided from lang/htdp-intermediate
list  provided from lang/htdp-intermediate-lambda
list  provided from deinprogramm/DMdA-advanced
list  provided from deinprogramm/DMdA-assignments
list  provided from deinprogramm/DMdA-vanilla
list  provided from lazy
list  provided from srfi/1
List  provided from typed/racket/base, typed/racket
list box  in gui
List Filtering  in reference
List Iteration  in reference
List Iteration from Scratch  in guide
List Operations  in reference
list patterns  in syntax

/Jens Axel

Posted on the dev mailing list.