Frequent Mac Gems readers know that we’re both both fans and critics of Spotlight, Tiger’s advanced search technology. Most of our complaints revolve around Spotlight’s interface—it’s more difficult than it should be to perform simple searches; certain types of more advanced searches are inaccessible to the typical user; and the listing of results you get can be difficult to work with.
As a result, we’re always on the lookout for ways to improve Spotlight or to better take advantage of its technology. A while back I wrote about EasyFind, a free alternative to Spotlight for finding content on your hard drive. Not long after, my colleague Rob Griffiths covered MoRU, a $10-$18 front end to Spotlight that uses Spotlight’s own indexes to perform searches but makes more advanced search techniques accessible. I’ve recently discovered another such option, Matt Neuburg’s free NotLight 1.3 ( ).
Like MoRU, NotLight uses Spotlight’s own indexes, so the results you get are the same as if you’d actually used OS X’s own searching options. But NotLight provides two significant improvements over Spotlight’s own search functionality: the ability to easily perform more precise searches, and a better results listing. Not one to mince words, Matt explains the appeal of NotLight thusly: Apple’s Spotlight GUI front ends are crappy. The Terminal [sic] is excellent, but it’s really for expert users. Somewhere in between, there needs to be a simple GUI front end that helps the user form real Spotlight searches. And that’s what NotLight is intended to be.
NotLight provides access to Spotlight’s advanced search capabilities without being overwhelming. First, you choose the type of search (in Spotlight language, the search key ) you want to perform: Display Name (a standard “name” search); Full Name (which apparently may differ from the display name, depending on your system language and things such as hidden file extensions); Content; Finder Comment; Extension; Type Code (the older “file type” code from the classic Mac OS); and Modified Date. Text in the middle of the NotLight window explains each option in detail; for example, in the screenshot below, NotLight explains what a “Display Name” search does and how to use asterisks (*) to enhance your search:
(Note that Spotlight doesn’t appear to index Full Name, Type Code, and Modified Date information about files, so these searches will be slower than the others, as they’ll take place in real time.)
Then you type your search string—what you want to find—in the text field. As noted in NotLight’s onscreen description, you can use asterisks as “wildcards.” For example, to find all files with names beginning with the word personal , you would use the Display Name search and type
personal*; to find all files with names that contain that word, you would type
*personal*, and to find all files with names that end with that word, you would type
You can also specify additional search options via the checkboxes below the text field. Word-based means a match will be found if a file’s name matches any word of your search term. Case-insensitive means case will be ignored during the search; for example, a search for Mac will find both Mac and mac . Diactric-insensitive will ignore diacritics when doing a Display Name search, so, for example, a search for möglich will also find moglich , and vice versa.
Finally, there’s an option to insert “Contains” wildcards—an asterisk before and after the search term—as well as an option to make this the default search behavior. The latter option emulates Spotlight’s standard search mode by making all searches a “Contains” search. (As with Spotlight, with this option enabled, you won’t actually see the asterisks in your search field.) This is generally the preffered approach, as it means you’ll get more results. However, there may be times when you don’t want to search this way—perhaps you want to find only files with names that match your search term exactly. By disabling Auto-Contains Mode, you can easily perform such a search.
(There’s also a pop-up menu that lists Boolean operators: == means “is” or “matches”; != means “is not” or “doesn’t match”; >= means “greater than or equal to”; and <= means “less than or equal to.” For most searches, especially text searches, you should leave this menu alone. These options are useful mainly for date searches and searches involving numbers.)
Click the Search button, or press return, and NotLight performs your search. By default, it searches your entire hard drive—or as much of it as Spotlight normally searches. (Spotlight doesn’t search a number of system-level folders, nor does it search other users’ Home folders.) However, if you want to limit your search to a particular folder or a different volume, simply drag that folder or volume to the “Drop a folder here to search in it” field at the bottom of the NotLight window; only that directory will be searched. (Even easier, if the desired folder is the active Finder window, you can just click the Finder button.) If you want to search another folder simultaneously, drag it into the window, as well; you can search as many folders as you like. (To get rid of a search directory, click the X button next to it.)
Instead of the limited results list you get when using Spotlight’s menu-bar search, NotLight displays a full list of all results. And unlike Spotlight’s results window, which forces you to click a tiny “i” button—for each file—to view important file information, NotLight’s results window lists each file’s name and file path and, optionally via the Options menu, its modified date and icon. (Note that the latter two options may slow the search a bit.) For the curious, the results window also displays the actual Spotlight query used by NotLight to perform the search. Double-clicking a file in the results list reveals it in the Finder.
(I’ve reduced the size of the above screenshot to fit here, but it’s actually a large, easy-to-read window.)
NotLight also makes it much easier than Spotlight to perform more complex (AND, OR, or NOT) searches. The easiest way to do this is to perform a search for one term, close the results window, then enter the second search term—but don’t click the Search button. Instead, click Search Also (for an OR search that provides results matching either term) or Search Within (for an AND search that provides only those results matching both terms). In other words, you’re adding search results to the current results, or you’re searching within the current results to narrow down your search, respectively. (The != option, which basically means “does not match,” can be useful here, when used with the Search Within button, for excluding particular files from an existing search.)
Power users can take advantage of NotLight’s advanced search drawer, accessible via the “umbrella” button. I won’t get into the nitty-gritty of this drawer here, but NotLight’s Help is excellent and explains how to use this feature to perform complex searches in one step, as well as how to search using Spotlight’s advanced search syntax. You can also save search queries for later use.
Date searches are also easy via NotLight’s Date Assistant (accessible via the Window menu). You can choose from among several pre-defined date-based queries, enter a relative time (time ago or from now), or enter a specific date/time. It’s with these date searches that the >= and <= options come in handy, as they let you, for example, search for all files modified in the past week. (Although note that Spotlight’s queries are a bit counterintuitive here: To search for files modified in the past week, you would enter “1 Weeks Ago” in the Date Assistant window and then choose >=, since Spotlight is actually searching for all files with a “larger”—later—date than a week ago, not for files “modified less than one week ago.”)
Finally, if you’re a Spotlight-syntax pro who frequently uses other search keys, you can use NotLight’s Search Keys dialog to add your favorite types of Spotlight searches to NotLight’s pop-up menu.
There are a few features I’d like to see in future versions of NotLight. For example, the ability to search for visible/invisible files and an option to view file sizes in the results window would be welcome. I’d also like to see NotLight automatically switch the “operator” pop-up menu to == when you choose a search method other than Modified Date (so you don’t accidentally perform text searches with >= or <=, which will usually provide meaningless results). It would also be useful to be able to omit particular folders, or to exclude specific paths, from a search, but Spotlight’s search syntax provides no simple way to do this, so I can’t fault NotLight for this ommission.
Although I still haven’t found a perfect Spotlight interface or alternative, with utilities such as NotLight, EasyFind, and MoRU out there, Mac OS X users have plenty of quality searching options.