Exectool provides a robust means of executing external programs on the local computer, or remotely on behalf of other plugins.

The primary features of exectool are syntactic emulation of Tcl's built-in ::exec funcion, but with functionality for automatically searching for executables in the user's path, with fall-back code for allowing a user to specify the location of a missing executable rather than failing silently as often happens with Tcl's ::exec function.

Exectool also provides features for running jobs in the background, and may be extended to replace some of the built-in job execution functionality found in more sophisticated plugins such as AutoIMD as work progresses.

::ExecTool::exec
Drop-in replacement for ::exec. Before running the program, it searches Exectool's registry for the program, prompting the user for its location if not found.
::ExecTool::find [-interactive] [-path <path>] [-description <text>] mnemonic
Search for the program by the provided mnemonic. Returns the full path to the executable if it is found, and the empty list otherwise. Options:
[-interactive] - if specified and Tk is available, the user is prompted for missing information.
[-path ] - if specified, the given path is tested before continuing the search
[-description ] - if specified and the mnemonic is not registered, the description defaults to the given text while prompting the user and returning the path.