I’ve been using Quicksilver for as long as I’ve had a Mac, and quickly found that I couldn’t live without it to help me control my computer and access files, applications and websites.
But I’ve always been a bit frustrated by the application’s occasional lagging or crashing (which can mostly be remedied by disabling as many plug-ins as you can do without) and the quirks of the interface — I don’t like that you have to manually switch between search and text entry, and I can’t get used to the fact that, for some actions, you’ll be typing text in the first pane, while for some others you’ll be typing it as a parameter in the third pane.
Not that it’s preventing me from using Quicksilver, and even relying very heavily on it, but I needed to learn OS X development and decided it would be a good exercise to try and come up with my own version, and see how far from the mark I managed to get. (Before Google’s Quick Search Box implements enough functionality to wipe out any competition.)
So here comes Sokusei, where you always start by typing text, than choosing what to do with it; where, if you change your mind in the middle of the operation, you’re not going to lose the text you entered; and where you always know what the default action is going to be when you open it, regardless of what your previous action was.
Universal binary, requires OS X 10.5 Leopard.
Note: if you’re upgrading from 0.2.4, please delete the folder named Actions from ~/Application Support/Sokusei.
You invoke the Sokusei window by pressing Control-Space. (Choose “Preferences…” in the menu to change the shortcut.) Then, you type some text, and press Enter. There you go, a browser window opens with a Google search for the text you entered.
Except if you typed a URL, in which case that URL opens. (If you want to search a URL for some reason, just add a space at the end so that it isn’t considered like a valid URL anymore.)
While you’re typing, though, Sokusei also compares your entry a catalog of your installed applications, and your Safari bookmarks; the potential results are displayed below the text, and you can select one with the up and down arrows and launch it by pressing Enter. (Like Quicksilver, Sokusei searches for letters, not words, so that typing “PS” will return Photoshop among the results, for instance.) The list is only displayed as long as you’ve typed a single word; it disappears as soon as you type a space.
If you launch one of the items, it will be ranked higher in future searches; it will also be associated more strongly with the abbreviation you’ve typed to access it (in the example above, that means Photoshop would appear first in least whenever you type “PS” again).
You can select an item from the list by using the up and down arrows, or clicking on it; you can also press Command-Enter to launch the first item directly, like in OS X’s Spotlight menu. If there are too many results matching what you typed, you can choose to refine your selection and automatically associate the item you were looking for with the abbreviation you typed.
Beyond the default actions that make Sokusei a simple launcher (for searching Google, opening URLs and launching applications), you can also press Tab, once you’ve typed some text in the main window, to toggle extended mode, which lets you apply custom actions to the text you’ve entered.
You select an action the same way you search for items to launch: by typing a couple of letters from their name. Here are the actions that can be applied to your input:
Quicksearches: any URL from your Safari bookmarks that contains three asterisks (***) is considered a search URL, and will be executed by replacing the asterisks with your text. For instance, if you have a bookmark for http://en.wikipedia.org/wiki/Special:Search?search=*** then you can type some text in Sokusei, press Tab, select Wikipedia (by typing “WP” for instance) and press Enter to get the Wikipedia search page filled with your search terms.
Here are a few example quicksearches; add them to your Safari bookmarks and relaunch Sokusei to make them available in extended mode: Google Images; Google Maps; Google Define; Wikipedia; IMDb; Amazon; Facebook; Post to Twitter (doesn’t actually post, but opens the Twitter homepage with your text pre-entered).
AppleScripts: any script file placed in ~/Library/Application Support/Sokusei/Actions will appear in the list of applicable actions. By default, Sokusei installs a “Make Text Note” script that creates a text file on your desktop containing the text you’ve typed, and a “Make iCal To-Do” that adds it to iCal. If you want to change the way those actions behave, you can edit the scripts in Script Editor; you can also use them as a basis to create your own (it’s exceedingly simple).
You can’t change the default search engine, either. That will also be fixed eventually (probably by looking at which default search engine you’ve set for Safari).
Unlike Quicksilver, Sokusei doesn’t assign a higher weight to uppercase letters when it’s searching through its catalog (I think Quicksilver does that?). That will probably never change for technical reasons; it isn’t that important, though, since abbreviations will be remembered for each item you launch.
Most configuration is done through files manually placed in the Application Support folder, rather than an application Preferences window. I’ve decided that, if you need to personalize the catalog of available actions, you’re geek enough not to be scared of editing a script in Script Editor or creating aliases to your folders.
Likewise, links and quicksearches are only read from your Safari bookmarks. That will probably be fixed at some point, but it’s not a very high priority. (Aren’t there utilities that can synchronize your Firefox bookmarks with Safari, if you need to?)
Sokusei only scans your drive at launch, so you’ll need to relaunch it to update the catalog with new applications or bookmarks (by choosing “Relaunch” from the menu or pressing Command-R). I’m not a fan of applications that take CPU power and slow the hard drive down in the middle of you doing something else, and I don’t think it’s that much of a pain to relaunch Sokusei if you want it to take some change into account, so it may stay that way. (Or it might be offered as an option when I get to learning how to use multithreading.)
The Sokusei catalog is much smaller than Quicksilver’s; some stuff will be added later (such as Address Book information), some won’t. And I have very low interest in developing a plug-in interface.
I don’t know how to handle, and have no way to test, multiple monitor support, so for now Sokusei simply uses a method called “center” that places the window in the top center of the screen. (The main screen, I suppose.)
You can open the Preferences window from the Sokusei menu to change its keyboard shortcut if it conflicts with the one you’ve set for Quicksilver. But I wouldn’t recommend running both at the same time: if, every time you want to type or search something, you have to ask yourself whether you need to open Quicksilver or Sokusei, the time and thought wasted will negate the gains of that keyboard interface. Besides, the whole point of Sokusei is that its interface behaves in a slightly different way (i.e., you type text and choose commands in another order than in Quicksilver), so switching from one to the other every few minutes is going to mess with your brain.
If you’re interested in Sokusei, I’d say you ought to really give it a try for a few days — disable Quicksilver for a while, and see if you can do without it and adjust your reflexes to the way Sokusei does things. It’s entirely possible that you rely too heavily on some part of the Quicksilver catalog that you absolutely need; but you may also find that you like the logic of Sokusei better, and you decide to switch.
As for things like defining a bunch of keyboard shortcuts and mouse triggers to execute actions, I don’t intend to ever implement those ; I’d strongly recommend using separate, dedicated applications (Proxi is much more powerful and reliable than Quicksilver for defining shortcuts, for instance, and there are lots of adequate iTunes-controlling applications).