This program is freeware, not public domain – i.e., I retain copyright (see “Boring legal message”)
FastTask is RISC OS 3 only - sorry for anyone who still has RO2 (hello Kemal ;-) ). If you don’t want to read all of this, use interactive help instead.
Terminology note: I use “application” and “task” interchangeably throughout this document.
An HTMLised version of this is also available online courtesy of WebSoc.
The TaskEnsure application is © Ben Summers - see Docs.TaskEnsure for more details. The WimpKey module - version 1.10 - is © Jason Williams and Sam Kington - see Docs.WimpKey for more details.
FastTask is the sort of program you should put in your Boot sequence, as most of its usefulness comes from it sitting in the corner quietly listening to the applications you’re running and where they came from. When you actually want to start a task with it, Select-click on its icon or press the hot-key (by default Shift-Insert, but you can change it later). A small window will pop up, where you can type in the name of the task (a preceding ‘!’ is not necessary). To start the thing going, press Return; press Escape to close the window. There isn’t an OK button or anything, but then you’ll be using the keyboard anyway so you don’t need one.
FastTask will then go away and look in it’s “hit list” of directories, to see if the file you asked for is in any of those. Usually it will, and the longer you have had FastTask on your machine the higher the likelyhood of it finding it, but if it doesn’t it will search the entire directory tree until it finds the file or runs out of space (it can only cope with 256 directories). If it takes more than 20 seconds to find the file, you’d be better finding it yourself - remember that once you’ve opened the directory the task was in, FastTask will know about it and remember it next time.
Every time FastTask successfully runs a task, the directory the task was in will be moved up the list. Conversely, if a directory is no longer present (floppy discs are prime candidates, but it could also happen if you’ve re-organised your directory structure), it will be moved down. If you choose the menu option “Show list” or have a look at the “Hits” file inside !FastTask, you’ll see that each directory has a number next to it – this is the number of times the directory has been accessed.
It then adds the library (%), System:Modules and Resources:$.Apps. It doesn’t bother with $ or &, because $ doesn’t expand correctly with CFS sometimes.
Finally, it trawls through all the $Dir variables - i.e. FastTask$Dir, FinalLook$Dir etc. - and adds the parent directories, so if FastTask was CFS#IDEFS::HD110.$.Utilities.Files.!FastTask, it would add CFS#IDEFS::HD110.$.Utilities.Files.
This should be enough to get you started. The best way is to walk around opening all the directories you think you might need, so FastTask knows about them, which is the important bit. It will speed up later when it sorts them in the correct order, but in any case it will be faster than it looking through the whole tree, and going through your fonts, files, and other directories that don’t contain anything useful.
Note that FastTask treats applications differently from directories - i.e. if you open a directory, it gets added to the list or promoted, if you open an application it doesn’t. Also, if FastTask finds an application when it’s searching the tree, it stops, it doesn’t look inside. If you have special applications that hold other applications (because you want them to have a nice picture), either run one of the applications while FastTask is loaded, or open up the application before you run FastTask for the first time, so the applications inside are booted and FastTask will know where they are when it’s looking at $Dir variables.
The hit-list is stored as the text file “Hits” inside !FastTask. The format is very simple: a number, which is the number of times the directory has been found (must be 1 or more), a space, the full name of the directory. As mentioned above, deleting it will cause FastTask to re-create it next time it is run. The file will be updated when FastTask quits.
To set the hot-key, just press the key-combination you want to use when the choices window is open.
Clicking on the small “i” icon will run Help. See below for how to change it.
Finally, selecting “ignore non-executable files” will stop FastTask telling you about files it has found that match the description you gave it, but are not executable (i.e. their filetype is not in the “FileTypes” file).
You can also do other things apart from running applications (although running them is the default) by using special commands. If you put “-boot”, “-open”, “-tinydir” or “-*<cmd>” (where <cmd> should be replaced by a single *command of your choice) anywhere in the list of filenames, all the filenames that follow the command will be passed to it – until another command is found. There is also a “-run” command, that will simply reset to the default action. So the string “-boot resed -open modules -tinydir link cc objasm -run webster” would boot !ResEd, open the Modules directory, add !Link, !CC and !ObjASM to the tinydirs (also known as “Pinboard on the icon bar”), and finally run !Webster.
But the really serious bit is -*<cmd> (use this with caution, though – you could crash FastTask). For instance, if we set the following variables:
*Set Alias$SaveFullPath "echo |then the command line “-*SaveFullPath system boot modules templed -*PrintPaths system” would print the full paths of !System, !Boot, System:Modules and !TemplEd in a taskwindow. The only restriction is that <cmd> must be one word - but you can just define alias$cmd to get round that. The full pathname of the application handed to the command is held in the system variable FastTask$File.{ >> pipe:$.output }" *Set Alias$PrintPaths taskwindow "print pipe:$.output" -quit
Shift and Control work the way they do in the Filer when you start a task - i.e. holding down shift opens an application or loads a file into Edit, holding down Control doesn’t boot applications.
If you want to use another interactive help provider than !Help, for instance StrongHelp or BubbleHlp, modify the bit in the !Run file that sets the variable Alias$GetHelp. Keep the Filer_Run bit in to start the help provider as a separate task.
Finally, you may also want to alter the list of filetypes FastTask thinks are runnable files. By default, directories and especially applications are considered as runnable, as well as modules, absolute files and utilities. You may want to add BASIC files, or even SoundTracker modules or Impression files. To do so, edit the “FileTypes” file inside !FastTask; each new file-type should be on a separate line. Filetype names should be case-sensitive; straight numbers might work as well. Beware: if you add too many, there might be conflicts. In particular, adding Obey files is rather stupid, as you might not be able to open your !Boot directory (type in !Boot, hold down Shift), as some application might be higher up the list than your root directory.
Oh yes: “Wibble wobble fishcakes” is a quote from Terry Pratchett, Reaper Man I think.
Hellos also go to Nick Craig-Wood (author of Director - if you don’t have it, get it at once), Dick Alstein (TemplEd and WimpInfo), Dominic Symes (Zap), Cy Booker (BasCompress - if you haven’t registered yet, do so), Mark Greenwood, a.k.a. The Fat German (BlackHole), and Olly Betts (loads of neat modules like LineEditor, SpecialCase etc.). If I’m into waves, well, hello comp.sys.acorn. That should take care of most people ;-).
This software is supplied “as is”: I make no warranty, expressed or implied, of the merchantability of this software or its fitness for any particular purpose. In no circumstances shall I be liable for any damage, loss of profits, or any indirect or consequential loss arising out of the use of this software or inability to use this software, even if I have been advised of the possibility of such loss.
In other words, if your computer crashes, blows up, you lose all your work etc. all because of FastTask, it’s not my fault. Honest.
E-mail : 926286ki@udcf.gla.ac.uk. This should be OK until June 1996. I (probably) won’t be at Glasgow during the holidays, but mail will be automatically forwarded to wombat@altern.com, which is my French email address.
Snail-mail : My term-time address, at least until June 1995, is:
Sam KingtonAgain, a backup is the home address – anything that goes here will get to me eventually.
Flat 2/1
44 Hotspur Street
Glasgow G20 8NL
SCOTLAND
Sam KingtonTerm-time is October to June, with bits off at Christmas (3 weeks) and Easter (4 weeks).
Merlhiot
24420 Savignac les Eglises
FRANCE
If you want an updated version of this, send a disc and the appropriate stamp (or two discs) to the appropriate address. So if I’m in France, send a French stamp to the French address; if I’m in the UK, send a Brit stamp to Glasgow. And yes, the Brit address doesn’t last for very long anymore - sorry.
If you send me something in the UK, bear in mind that I don’t have (easy) access to Acorn machines, so don’t send me an Acorn disc, send me a PC disc.