Re: [Rhythmbox-devel] (no subject)



On Wed, 2005-12-07 at 09:02 +0000, mailing rhythmbox seani justemail net
wrote:
> 1) Preprocess the list entry before applying the search term. This
> involves removing multiple spaces and punctuation, and ignoring case.
> 
> 2) If a search term is composed of several text fragments seperated by
> spaces, *all* of the fragments must appear in the list entry text for a
> match to occur, but the order is unimportant
> 
> given:
> 
> "The Best Of Some Tedious Band"
> "Tedium As A Way to Achieve Some Level of Relaxation"
> "Is This The Way to Sleep"
> "Time For Bed, Its Three OClock"
> 
> The 1st and 2nd will be matched by "ted som" or "som ted"
> 
> This gives us a loose sort of logical AND.

Rhythmbox 0.9.2 does this. All punctuation and word breaks are stripped,
and case is ignored. A track will match if each fragment is found in any
of Title, Artist, Album and Genre; a track will not match if any of the
fragment isn't in one of those.


> 3) The pipe character, "|" is used to seperate alternate search terms
> (loosely, logical OR)
> 
> This means that, for instance, the search term:
> 
> "ted best | clock"
> 
> would match the 1st and 4th entries.
> 
> "band | way achi | time"
> 
> would match the 1st, 2nd and 4th entries.
> 
> This relatively simple extension seems to work extremely effectively,
> and its very easy to implement; split on the pipe and apply each term in
> turn.

There was a discussion about having more powerful filters available
earlier in the year[0]. That suggest more complex searches, allowing you
to specify "artist=X or album=Y" and the like. What you're suggesting
would be a lot simpler, and fairly trivial to implement.

[0]http://mail.gnome.org/archives/rhythmbox-devel/2005-April/msg00041.html


> I also have a setting that allows the search term to be applied
> automatically if it changes and there is a suitable pause, usually at
> about 1.5 seconds. This allows the user to type the term, and when they
> stop for breath (or just stop), the list is filtered, but they can carry
> on to further refine if need be.

Rhythmbox also does this, although the timeout is set to (if I recall
correctly) half a second.


> Generally lists of up to about 10-15,000 entries can be searched in this
> way in a near interactive fashion (given lots of other criteria
> concerning memory, processor speed, language etc. that I haven't defined
> :)).

The cvs version of Rhythmbox has several speed improvements which make
this faster than in older versions.


Cheers,

James "Doc" Livingston
-- 
"This array has no size, and that's bad" -- MPW C error message

Attachment: signature.asc
Description: This is a digitally signed message part



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]