I am at OpenExpo and while chatting about KDE 4.1 with the nice people at the KDE booth, I realised that some of the Debtags Technology™ could be used to make a really good application launcher.
After a bit of prototyping, I present you the Application Launcher Startup Kit:
git clone http://people.debian.org/~enrico/2008-09/launcher
There are two python scripts in it: index
that indexes your existing
.desktop
files in a Xapian database, and query
that contains a function to
query the index, and when run with the query keywords as parameters, it shows
the results. You give it a list of terms (and possibly of currently selected
categories), and it gives you:
- Spell checking suggestions
- Tag cloud generation
- Completion support
- Search results
It's more than fast enough to do all of this in real time, as the user types.
For example, on my system:
$ ./query imag Found: 55 /usr/share/applications/gqview.desktop Found: 51 /usr/share/applications/gimp.desktop Found: 48 /usr/share/applications/gpicview.desktop Found: 46 /usr/share/applications/camorama.desktop Found: 44 /usr/share/applications/inkscape.desktop Found: 42 /usr/share/applications/geeqie.desktop Completion: image Completion: imagemagick Completion: images Tagcloud: 2DGraphics 0.661410884419 Tagcloud: Application 0.489939013302 Tagcloud: Core 0.331070153265 Tagcloud: GTK 0.158799073563 Tagcloud: Graphics 1.0 Tagcloud: Photography 0.426417355406 Tagcloud: RasterGraphics 0.661410884419 Tagcloud: Utility -0.3383614892 Tagcloud: VectorGraphics 0.213729717371 Tagcloud: Video 0.364913248472 Tagcloud: Viewer 0.806009703748 Spellchecked: image $ ./query word proc Found: 100 /usr/share/applications/ooo-writer.desktop Found: 69 /usr/share/applications/efax-gtk.desktop Completion: word processor Completion: word processors Tagcloud: GTK -0.255400677833 Tagcloud: Office 1.0 Spellchecked: Spellchecked: doc
Now, it's just a matter of putting a GUI on top of it. I am not going to do it: that is up to you.