[bt-devel] Re: BibleTime development

Lee C. elc at carpie.net
Sun Nov 13 10:13:19 MST 2005


Martin,

Sounds good to me.  So we're all on the same page, I will start with a 
re-investigation of the latest version of clucene.  This includes a 
study of it's current use and Sword and a determination of whether or 
not it is stable and adequate for use in BibleTime.

Thanks,

Lee C.

Martin Gruner wrote:
> Hey Lee,
> 
> glad that you're interested. We had many people show interest, I hope that you 
> prove it. =)
> 
> Please have a look at the Sword sources. You will find some classes that offer 
> search capabilities. (E.g. a normal search, a regular expression search and 
> others). One of them is an index-based one. A while ago we decided NOT to use 
> it in BibleTime because of the awfully slow release cycle in Sword and 
> because clucene (http://clucene.sf.net), which it is based on, was still in a 
> buggy state and its development stalled. We'd like to stick with that 
> decision for now, at least.
> 
> We do want an index based search, in fact in future we want to offer only one 
> search instead of different ones, which offers all the features (e.g. 
> powerful search syntax) and is lightning fast. =) This is what you could 
> contribute at present.
> 
> You are basically free to choose a way to reach this goal. However, Joachim 
> and I suggest that you carefully examine clucene and the way it is used in 
> Sword at present. Is it more stable now that its development has speeded up a 
> lot? How are its unicode handling capabilities? It does offer a powerful 
> search syntax (and thus would fulfill our aims outlined above), and is 
> perhaps one of the best tools available, so it might be advisable to use it 
> and not reinvent the wheel.
> 
> If this turns out positive, then you could start by copying the clucene based 
> code from Sword to BibleTime, and make modifications / adaptions for lucene 
> 0.9.x, if needed. We need one or more classes in the backend which can be 
> used by the search dialog. We gain more power over the clucene internals by 
> maintaining our own search logic, as well as perhaps more speed because we 
> can work with QT Strings directly (clucene probably does use c strings 
> internally, though).
> 
> Later we might need to use facilities that IBM's ICU (http://icu.sf.net) 
> provides. E.g., in some languages there are no spaces between words, and for 
> index creation a separation into words needs to take place. So if clucene 
> cannot do it, we have to use ICU (which offers a lot more, though).
> 
> But this can come later. The first step would be a little research on clucene 
> and a decision if we can use it. The second one would be an integration of 
> clucene into our backend. Once it works as desired, we can change the UI of 
> the Search dialog to allow for index creation and the features that the 
> search offers. ICU would come after that, if needed at all. If you have a 
> technically better alternative than ICU, including your own code, that will 
> be fine.
> 
> That is Joachim's and my suggestion for a project for you. It is a large task, 
> and we only dare to ask you because of your background in Computer Science. 
> We can also take "No" as an answer.
> 
> Martin
> 
> P.S.: Please let us continue on the list, unless you have private messages.
> 
> P.P.S.: If you are still interested, mail me your sf id, and I'll add you to 
> the project for CVS write access.
> 
> 
> 
> 
> Am Freitag, 11. November 2005 04:24 schrieben Sie:
> 
>>Martin,
>>
>>Thank you!  Long-term should be possible.
>>
>>As for index-based searches, I am familiar with the concept, but I
>>haven't implemented a optimized search engine or any thing like that.
>>I'm not afraid of diving in there if need be, though.  What did you have
>>in mind?
>>
>>Thanks,
>>
>>Lee C.
> 
> 
> 


More information about the bt-devel mailing list