I found an interesting blog post: http://www.techsource.ala.org/blog/2006/04/how-opacs-suck-part-2-the-checklist-of-shame.html
It's a pretty good list of search-related features that an OPAC needs. Here's the list with a few modifications as well as comments on Koha's current and future support of these:
Yep, done through Zebra.
stemming is “a method by which Search Engines associate words with prefixes and suffixes to [a] word stem to make the search broader,” such as returning the same results for “applies, applying, and applied.” Koha doesn't do it yet, but I can think of a few ways to do it either in pre-processing of the original term or by adding a stem index to Zebra.
For instance, you enter in 'It' in the keyword search, and it pulls up Stephen King's novel titled 'It' first. Yep, Koha can do it through Zebra.
Yep, Koha can do it either via a google API (yet to be committed to CVS), or via an internal index (in sql) with mysql's soundex.
TODO: pass the original query through to the search box so it's easier to refine the query (10 minute job)
substitute + for required and - for not
Can the search engine support quoted searching (“declaration of independence”), wildcard searching (appl*), proximity searching (cheese near cheddar), or give preference to case (AIDS versus aids)?
Yep, all of the above
Basically, can you decide that search results will be “anded” (meaning that all terms must be matched) or “orred” (meaning that any term must be matched)?
Yep, we can do that.
The ability to search in-line by a field, the way in Google you can limit your searches, for example, with site: edu.
Yep, for instance: title=cryptonomicon
Koha's had duplicate detection since 1.0
Yep, got it.
Yep, got it.
Yep, got it.
Yep, got it.
Yep, got it.
Not yet, but sounds like a neat idea.
Yep, got it.
We could definitely improve here.
The rest of these items were gleaned from the comments on that blog: