Author
Topic: Find And Run Robot (FARR) - Features You Should Know About (Read 82941 times)

I started writing up some notes on aspects of FARR that make it different that other launchers, I thought i would paste it here and try to keep it updated based on suggestions. Maybe as was suggested on another thread a wiki would be more appropriate eventually:

Indexing vs. Non-indexing

One of the features of FARR that some people really like and others don't, is that FARR does not index directories. This means that all searches are conducted on the actual directory structure.

Benefits of this are that FARR is never using background cpu scanning the disk for changes and is always up to date, and uses very little memory when minimized.

A disadvantage is that FARR can take a little longer to search large/deep directories. In practice the start menu can be searched very rapidly which is the main use of FARR, but if you want to use FARR to search a huge directory structure of documents, an indexed solution might be better (though in this case you might be better off with a proper file contents indexing program like the desktop search tools, as opposed to a launcher).

One important exception to the non-indexing is that FARR does cache the list of launched files, so that even if a desired program is not found instantaneously, once it is launched once, it will forever more be found instantly.

(there is also a plugin for FARR that uses the Locate32 free indexing search program to conduct indexed searches -- it's not as seamless as native indexing launchers but it is useful for occasional searching of certain directories).

Heuristic Scoring

FARR may have been the first launcher to use heuristic scoring to do a good job of ranking found files. There are a wide range of heuristics employed, and advanced users can configure the differential weighting of various factors.

By customizing the weighting and adding new weighting patterns, users can easily exclude certain kinds of results or bring others to the top.

Special modifier keywords can be used to bring certain scoring heuristics into play only in certain cases (for example one could set up a +music modifier which weighted certain file extensions and added certain directories to the search).

Result List

While some launchers focus on showing and auto-completing a single best result -- FARR always shows the top ranked results. Hitting Enter launches the top result -- but the user can also directly launch any of the top 10 by hitting alt+#.

Right clicking on a result brings up a menu of common operations (including excluding the result from future searches, changing the weight of the result, adding the result to a user-defined group menu.

The result list is also a standard windows file list -- so files can be dragged out of the results to other programs, and the normal right-click file context menu can be accessed.

Plugins

FARR is coded in C++ (C++ Builder by CodeGear/Borland), and a native C++ plugin interface is available. But one of the unusual things about FARR is the extent to which users have contributed wrappers for writing plugins in other languages.

Plugin API wrappers exist for coding plugins using Delphi, C# and other dot net languages, as well as javascript (and python and other active scripting languages). Javascript has turned out to be an extremely popular and easy way to write plugins.

Some plugins that have been written include a calculator with tape history and persistant user variables, clipboard plugin, default printer switcher, uninstaller, commandline shell and capture, language translation, delicious integration, todo list, alarm system, firefox/ie/opera bookmark searcher, google calendar plugin, and many more.

Plugins can display standard file result, or ask to display information in the FARR window as a richtext memo which is useful when displaying textual information. An html output spreadsheet output mode is coming soon.

Aliases

One of the things that distinguishes FARR from some other launches is what FARR refers to as Aliases. The term is somewhat misleading -- Aliases can play several different roles, and are basically special keywords or search patterns that can trigger different behaviors.

With version 2 of FARR, special emphasis was made on making it easier for users to create and share standalone alias packs containing not only lists of aliases (in xml files) but associated helper programs and icons.

In the simplest case, an alias might be simply a keyword that maps to a specific program -- so a user might say that when they type "mw" FARR should know they mean "microsoft word".

Users can create alias packs designed to work with third party applications, like the alias pack of commands to work with Nirsoft's NirCommand, which can perform system operations.

But there are many more complicated uses for Aliases:

Aliases: Menus

A common thing to do with aliases is create a keyword that contains a list of multiple results. Typing the keyword then shows the entire list of results for the alias, in the user-specified order. Users can customize the actual label for each of the results, and easily add new programs to an alias result list in a variety of ways.

This makes it very easy to make your own groups of files like "games", "work", etc. Of course you can type the keyword and then perform additional filtering by typing more words.

You can also use special results so that choosing one item in the result actually triggers a submenu or another search, so that a menu/group can really be a menu of additional searches not just files.

One of the things that sets FARR apart from other launchers is that when regular expressions are combined with menus, the result is that many aliases are designed to present a menu of operations to perform on a given typed word or phrase. So for example the "define (.*)" alias presents a list of different dictionary website searches which can be launched as desired, rather than presenting only a single result.

Aliases: Regular expressions

One of the most common use of advanced aliases is to design regular expression patterns that when matched can trigger subsequent results that operate on extracted patterns.

FARR comes with several built in aliases that can be used to send email and do various internet searches; regular expression patterns are used in such cases to allow optional specification of subjects, recipients, text, etc.

Aliases: Special functions

There are several special functions available in alias results, for doing things like sending text to the last active window before FARR was triggered, and conducting new searches.

One feature that is noteworthy is the ability to match on some regular expression pattern and having FARR act as if something else was typed. This allows complicated search expressions to be abbreviated with simple typing.

So if a user often finds themself searching for "C:\MyMusics\ +mp3 -.txt ARTIST" then they might create an alias that matches on "ms (.*)" and performs the search "C:\MyMusics\ +mp3 -.txt $$1"

Modifiers

Modifiers starting with + or - can be used to exclude results containing certain words (the - prefix) and to activate optional search directories or scoring patterns (the + prefix).

Directory Browsing

FARR has a complete folder browsing system with autocompletion and searching. If you start typing C:\ you will trigger the folder browsing on the C drive.. You can then begin to type patterns to progress deeper into the tree, using the tab key to autocomplete or keywords to reduce the search matches.

Hotkey support

One major new feature in FARR is a hotkey configuration system that let's you define multiple hotkeys to launch FARR in different ways.

FARR by default uses the break key, but it also supports the common alt+space trigger by default. Additional hotkey configurations can trigger FARR and start it with a specific search keyword or phrase -- which can be very useful if you define certain result groups or common searches to trigger on a hotkey.

A significant use of the hotkey system is to define certain hotkeys that can copy selected text from the active window before triggering FARR -- this is especially useful for using FARR as a dictionary lookup tool -- select some text, hit hotkey, FARR copies selected text to clipboard and then triggers a search phrase that makes use of this text.

Embedded Launchbar

FARR has a small visual toolbar on it's main window which can be customized by the user with arbitrary programs -- file results can be dragged and dropped on the tool buttons.

Update Support

In an effort to facilitate community sharing of FARR aliases and plugins, FARR uses an update system which is capable of checking for and automatically installing updates of the main FARR executable and of third party plugins, and of alias packs.

Latest Features

The most exciting new feature is the built in mini-html view / web browser. It's main purpose is to provide plugin writers with a new powerful way to display information, but users are also finding useful web pages that can be displayed in the small window.

Lots of features for plugin writers, including the ability to display non-modal alert boxes (useful for alarms, etc.), the ability to trigger on idle time and arbitrary hotkeys.

My favorite features-Right click-> copy path and add rule to this item-Multiple hotkeys-Embedded launcherbar-toolbar. Please do not overlooked this one, it is very helpful. Also you can drag and drop from the Farr results-Easy directory-folder browsing-Smart directory folder browsing (aka c:\pro\com brings c:\Program files\Common Files)-Launching history-Previous search history

I think that it would be beneficial to make youtube videos alongside help files.

Many thanks for these notes (and for FARR, of course). Useful info - for me, at any rate. I am still getting to grips with all the multifarious uses of FARR, and learning how to take advantage of it to make my use of my laptop/PC more efficient. I have noticed that FARR becomes increasingly more useful to me the more I actually explore its potential and use it.

i've said this several times and failed miserably each time, but this month has to be the month where i finally sit down and make some screencast demo movies showing how to use various features of FARR.

@mouserBe careful - if you do "...finally sit down and make some screencast demo movies showing how to use various features of FARR", then you might discover some other useful features of the thing that you had either forgotten about or had not previously realised!

If instead of choosing the listfarr result and pressing enter, I right-click it, a popup menu with a single item like "Visit this alias (...)" comes up. Choosing that brings up the FARR Options dialog with "Aliases/Groups" selected. Double-clicking on the listfarr entry in the right pane shows how the alias is implemented.

On my pc the speed is great and if it was faster I would not be able to detect it with my human sight - maybe the inside pc god would know

so far my fav. feature is the group alias, so I have/ to bring up a list of my fav. folderstxt to bring up a list of my most used text files like todo, addresslist etc.web to bring up a list of my fav web sites

Is there any way to backup and export the customizations/settings done in FARR? I'm planning a reformat and re-install of my system drive, and don't particularly look forward to doing it all manually one by one...