These classes would also be a cool extension to the kio plugins for allowing the user to browse, for example, files in a zip file that are stored in an email attachment. Another use would be to write a crawler that can gather information from all files in the filesystem even if they are hidden in emails or archives. I intended to add this feature to Kat, but because of the slowdown in the Kat project the latest Kat development version is not complete and does not build.
So I developed a small daemon that can index information using the new crawler. Now i've reached a point that the crawler is very stable and fast. How fast exactly depends on you system. It comes complete with a simple gui to control the daemon and to search. I've named the thing Kitten, because I hope it grows into a Kat.
Here are the main features of Kitten:
- Very fast crawling.
- Very small memory footprint.
- No hammering of the system.
- Pluggable backend, currently sqlite3, but clucene is almost finished too.
- Communication between daemon and search program over an abstract interface, this is currently a simple socket but implementation of dbus is a possibility. There's a small perl program in the code as an example of how to query. This is so easy that any KDE app could implement this.
- Simple interface for implementing plugins for extracting information. We'll try to reuse the kat plugins, although native plugins will have a large speed advantage.
- Calculation of sha1 for every file crawled (allows fast finding of duplicates).
svn checkout svn://anonsvn.kde.org/home/kde/branches/work/kde4/playground/libs/archivereader