A couple of weeks I introduced TriLite, an Sqlite extension for fast string matching. TriLite is still very much under active development and not ready for general purpose use. But over the past few weeks I’ve integrated TriLite into DXR, the source code indexing tool I’ve been working on during my internship at Mozilla. So it’s now possible to search mozilla-central using regular expressions, for an example regexp:/(?i)bug\s+#?[0-9]+/ to find references to bugs.
For those interested, I did my end-of-internship presentation of DXR last Thursday, it’s currently available on air.mozilla.org (I’m third on the list, also posted below). I didn’t reharse it very much so appoligies if it’s doesn’t make any sense. What does make sense however, is that fact that dxr.allizom.org supports substring and regular expression searches, so fast that we can facilitate incremental search.
(My end-of-internship presentation, slides available here)
Anyways, as you might have guessed from the fact that I gave an end-of-internship presentation, my internship is coming to an end. I’ll be flying home to Denmark next Saturday to finish my masters. But I’ll probably continue to actively develop TriLite and make sure this project reaches a level where it can be reused by others. I’ve already seen other suggestions for where substring search could be useful.
This feature would be really nice in Thunderbird mail searches!
Comment by Jean Claveau — August 31, 2012 @ 12:03 pm
I hope you mean incremental search and not regular expressions 🙂
I think FTS4 is better for search, as you can do stemming, don’t want substring matches and don’t care about regular expression.
Anyways, FTS4 module can search using only a prefix of the keyword, ie. key*, matches both keys and keyword. So inserting a * where the cursor is located, and incremental search with FTS4 would make sense.
I’m not familiar with the code base, and/or current search speed in thunderbird, so performance could still be an issue.
Comment by jonasfj — August 31, 2012 @ 1:37 pm