FileMinder Manual by Joel Swank Version 1.0 January 20 1992 I. Introduction FileMinder is a utility for mantaining files and directorys on a hard disk. It allows you to graphically see your directory structure and to move quickly to any directory and perform operations on the files and directorys there. It operates by first logging a disk directory tree, or parts of one into memory and then displaying the information in an easy to understand manner. Naturally, logging all the information about all the files on a disk can consume a lot of memory. It can also take some time, depending on how fast your disk is. It takes about 1 minute to log a 90% full 20meg partion on my 2090/ST251 disk. So, you may want log only parts of a disk at a time. Once you have a tree in memory there are many functions you can perform. You can copy or move files or entire tree structures, search files, view files, and print files with a background spooler. You can rename, delete, and change file dates, comments and protection bits. You can execute programs, call your editor, and start a CLI or Shell. Many of the commands have built in historys that are saved between sessions to save typing. FileMinder has a custom screen and 4 main windows that are open all the time. It also has many other windows and requesters that open as needed when their function is being used. It has online help files for almost all windows and requesters that are activated with the HELP key. The Control Window, which is always visible, has menus and gadgets that are applicable at all times. It also displays statistics about the files and directorys that are being displayed in the other windows. The Tree window is also visible when FileMinder first starts. It displays the current directory tree graphically. It gives operations on directorys and groups of directorys and their files. Below the Tree Window is the Small File window. It shows the first few files in the current directory that is selected in the Tree Window. Clicking the mouse in the Small File Window brings to the front the Big File Window to overlay the Tree Window and the Small File Window. The Big File Window shows all the files in the current directory and has operations on single files and groups of files. To get full use of FileMinder you need to install it in its own home directory anywhere on your hard disk (read the install.doc file for details). You can run it from the distribution disk to get a feel for what it can do. II. History. Several functions that require input of strings get their data via the history requester. Each function has its own set of up to 10 strings saved in the history file in the home directory. When you request a function, the history requester is displayed. It has a string gadget for entring new strings. New strings you enter are saved in the history list until the list contains 10 items. Then the least recently used item will be deleted to make room. When the requester is first displayed, the string gadget will contain the most recently used item in history list. You can chose another history item by clicking onit, or by moving the cursor bar to it with the arrow keys and pressing RETURN. You can make a frequently used item permanent in the history list by clicking the STICKY gadget when the cursor bar is on it. An at sign (@) appears in front of any item that has been stuck. To release a stuck item, click the STICKY gadget again. When you have selected or entered your item, click the OK gadget to execute the function. If you do not want to execute the current function, click CANCEL. III. Control Window The Control window provides menus and gadgets that operate on both directorys and files, program configuration functions and statistics about files and directorys. It can also be used to cancel some of the longer repetative functions such as copy tagged and delete tagged. To cancel an operation in progress, activate the Control Window and type the ESC character. You will get a requester that will allow you cancel or continue the function. Menus Project: Log Tree: You may select the directory that is to be the root of a tree. You can log an entire device or partition of a hard disk, or just a sub tree. All sub directorys and files in the hiearchy below the directory you chose will be logged. If you choose to log an entire hard disk, it may take a long time and a lot of memory, depending on how much of the disk is in use. The selection window is similar to a file requester, except that it shows directorys only, no files. You can select a directory by typing its full path into the string requester at the top, or by clicking one of the entrys in the selection list. When a directory is selected, all of its sub directorys will be displayed in the selection list. If the list is too long for the window, you can scan through it using the slider gadget and arrow gadgets on the right side of the window. When the string gadget at the top contains the full path of the desired directory, click the OK gadget at the bottom. If you want to abort the operation that is requesting the directory selection, you can click the CANCEL gadget, or the Close Window gadget. When the directory selection window first opens, it will contain a list of all direct access devices in the selection list. If it has previously been used since FileMinder was started, it will show the list as it appeared at its last use. You can get the device list appended to the current selection list at any time by clicking the DEVICE gadget. You can also go back up a level in the directory tree by clicking the PARENT gadget. Release Tree: A list of the root directorys of all logged trees is provided. Click on the one you want to free. When you click one it will be immediately freed. If you decide not to free any trees click the Close Window gadget to abort the operation. About: Gives FileMinder Version information. Help: Gives general help information for FileMinder. Quit: Exits FileMinder, releasing all resources. Configuration: LOAD: Loads previously saved configuration file from the HOME directory. SAVE: Saves current configuration information to the HOME directory. Palette: Selects one of 6 preset color pallettes. You can modify the Custom palette and it will be saved with the SAVE menu item. ColorWindow: The color window allows you to select your own color scheme. It modifys the 'Custom' color set of the color palette selection. when you open the color window, the colors from the current palette are copied to the Custom palette. The array of colors at the bottom left allows you to select the one of eight colors to be modified by clicking on the desired color. Color numbers 0 through 3 are on the top row and colors 4 throught 7 are on the bottom. The 3 sliders at the top right allow you to modify the 3 components of the currently selected color. The letters RGB or HSL to the left of the slider gadgets, are actually a gadget that lets you select the method of color encoding used by the sliders. It will toggle between HSL and RGB when you click it. Just to the left of this is a box that displays the currently selected color. There are also 4 gadgets in the bottom right. The COPY gadget is for copying a color from one gadget to another. To do this first click on the color to be copied from. Then click the COPY gadget. Then click the color gadget to be copied to. The RANGE gadget is for generating a smoothly varying range of colors. It tries to generate an evenly varying set of colors between a dark and a light color. To use it, first click the RANGE gadget, then click the color gadget containing the color for one end of the range, then click the color gadget for the other end of the range. This feature is usefull for generating colors 2 through 4. These colors need to be a range of shades of the same color for FileMinders 3D shading to look right. The OK gadget ends the color window and makes the currently selected colors active in the 'Custom' palette. The CANCEL gadget ends the color window and restores the original colors to the 'Custom' palette. After you have selected new colors, you will have to select the SAVE configuration menu item for your colors to be saved to disk so they will be automatically loaded the next time you start FileMinder. Sort Direction: Allows you to select Ascending or descending sort direction for the files in the File windows. Sort Field: Allows you to select sort by name or sort by date for the files in the File window. Editor Path: Allows you to select the path and name of you text editor. This editor will be run when you select the Edit menu item of the File Window. This editor must be capable of opening its own window or screen and must accept a file name on the command line (such as ED, the default, or Manx's Z or CygnusEd from CygnusSoft). Control Window Gadgets Current/Tagged: A toggle that selects whether the following 5 gadgets operate on the currently selected file or on all tagged files. VIEW: When the File window is active, VIEW will call the file viewer on the current file or all tagged files. (See the File Specification menu for information on matching files. See Big File Window keystroke commands for information about taging files.) When the Tree window is active, will call the file viewer on all matching files, or all tagged files in the current directory. The file viewer alllows you to move forward and backward through a file, and search for strings. The string search works in conjunction with the file search feature of the Big File Window. You can view ASCII text files or binary files. Non printing characters are displayed as '^X'. View operates from the keyboard. File Viewer Commands B/PgUp Up one page F/PgDn Down one page Return Down One line Enter Down One line Alt-S Search for new string S Search for next occurence of previous string Help Display this text U Up half page D Down half page Arrows Up/Down one line, Right/Left 2 characters Home/H Top of file End/E Bottom of file Q/Esc Exit from Viewer MOVE: When the File window is active, MOVE will move the current or tagged file(s) to another directory. You will see a move confirmation window when you click MOVE. If you click the NO or CANCEL gadgets this operation will be aborted. If you click YES, you will select the destination with the directory requester. When the Tree window is active, will move an entire tree to another directory. Works on a single volume only. To move from one volume to another, you will have to use Copy and Delete or PRUNE. COPY: When the File window is active, COPY will copy the current or all tagged file(s) to another directory. You will select the destination with the directory requester. When the Tree window is active, COPY will copy an entire tree or all tagged files in tree to another directory. You will be given the option to rename the file on a single file move. You will select the copy options for a multiple file move with the copy option requester. The root of the tree to be copied is the directory at the cursor in the Tree Window. Its full path will be displayed in the copy option requester. When copying a tree, all subdirectorys at the destination will be created as necessary. If the destination tree or directory already exists, you can also replace or update the files that are already there. There are 3 gadgets in the option window that control replacement. If you activate the REPL gadget any like named files in like named directorys will be overwritten unless their protection bits don't allow it. If they are protected, you will be prompted for permission to overwrite. If you select the UPDATE gadget, like named files will be overwritten only if the modification date/time is later on the source file than the destination file. UPDATE implys REPLACE. You may also force the override of any protection bits by selecting the OVER gadget. OVER also implys REPLACE. OVER and UPDATE may be used together. Files that are overwritten using the OVER gadget will not have their protection bits changed, so they will still be protected after the copy, if they were before. When you have set the above three gadgets as desired click the OK gadget and you will then be asked to select the destination directory using the directory requester. See Log Tree for information on the directory requester If you decide not to copy, click the CANCEL gadget to abort the operation. If you try to copy a file to a directory that already has a file by that name when you didn't specify REPL, or if you did specify REPL, but the protection bit is set, wou will see the overwrite requester. It gives the file info for both files. You can click COPY to overwrite, or CANCEL to skip that file. Note: If you are copying a tree to a like named tree on another drive, the tree is copied into the directory you select. For example, to copy the tree DH0:Test to DH1:Test choose DH1: as the destination directory, not DH1:Test. If you choose DH1:Test as the destination, you will get tree DH1:Test/Test created. PRINT: When the File window is active, PRINT will print the current or tagged file(s). You will select printer configuration with the print requester. When the Tree window is active, PRINT will print a copy if the current directory tree. Print File Requester FileMinder prints files via a background print spooler. The requester determines the options sent to the printer for each file. The options are sent to the printer driver using the standard Amiga printer commands. All options may not work with your printer. There 3 string requesters on the Left: Line Length determines the longest line that will be sent to the printer. Lines longer than this will be split. Minimum allowed is 10, the maximum is 300. Lines Per Page determines the number of lines the printer will print on one page. Zero leaves the printer at its default (usually 66). The maximum allowed is 300. Skip Over Perf determines the number of blank lines at the end of a page. This number is included in the lines per page. Zero leaves the printer at its default (usually 0). The maximum allowed is 300. There are 7 toggle gadgets on the right that select other options. Not all printers can handle all of these options. The combination of options that will work also varys depending on the printer. For example some printers will allow condensed combined with elite to give 165 charcter lines and some printers can only do one or the other. A wide printer will handle more characters in each format than a narrow printer. To select an option click its gadget on. Following is a summary of the available options: NLQ Near Letter Quality (or true letter quality if you have a 24 pin printer). 8LPI Eight lines per inch (normally allowing 88 lines per page). COND Condensed print or 132 characters per line on a narrow printer. ELITE Twelve pitch or 96 characters per line on a narrow printer. NUMBERS This causes line numbers to be printed to the left of each line. HEADERS This causes a header to be printed on the first page of each file containing the full path to the file and the current date and time. CTL CHARS This causes any control characters to be expanded to "^A" for the SOH character, etc. Formfeed, tab, and Newline are not expanded. When you have selected the desired options, click the PRINT gadget to print the file. If you are printing tagged files, The NEXT gadget will skip the current file and go to the next. You can click the CANCEL gadget to abort the print operation. For the print spooler to work CD and RUN must be present in your C: directory. You must also have set up the HOME= tooltype in the FileMinder ICON and the prspool program must be in that directory so that FileMinder can execute it. Once the print spooler has been loaded it opens a small control window on the workbench screen. This window shows which file is currently being printed. It also has a gadget to allow you to skip to the next file in its Q. The close gadget will purge the print Q and end the print spooler. When FileMinder finds that the spooler is not active, it tries to RUN it in the background and then waits up to 4 seconds for it to start. Usually this is enough time, but if the system is heavly loaded it may not be. If the spooler fails to start in 4 seconds, you will get an error requester. Check to see if the spooler window is open at the top center of the workbench screen. If it is, retry the print operation. If it is not, you may try to start it yourself from the CLI. CD to the home directory and enter 'RUN prspool'. You should then see its window open in a few seconds. Then try the print command again. Print the Tree FileMinder will print the current tree on the standard Amiga printer device. You may select the printer options just as you do for printing a file. Not all of the options are applicable to printing the tree. The tree is not printed in the background like files are and the print spooler is not needed. Following are the options that are active for the tree: Lines Per Page, Skip Over Perf, NLQ, 8LPI, COND, ELITE When you have selected the desired options, click the PRINT gadget. If you decide not to print the tree you may click CANCEL or NEXT to abort the operation. DELETE: When the File window is active, DELETE will delete the current or tagged file(s). You will confirm the deletion with the delete requester. When the Tree window is active, and Current is toggled on, will delete the current directory if it is empty. Will delete all tagged files in the current directory if Tagged is toggled on. To delete an entire tree or sub tree you must use the PRUNE menu item of the Tree window. Tree Selection Gadgets: ( < & > ) These will rotate the Tree window through all logged trees. Up to 10 trees may be logged at any one time, if you have enough memory. File and Directory Statistics The bottom half of the Control Window is used to display statistics about the current directory and file. The number of files and bytes in the current directory are shown, as well as the same for the matching and tagged files in the current directory. IV. Tree Window and Small File Window The Tree Window shows the directory structure of the current tree. You use it to select a directory or sub tree for operations, and to select the directory to be displayed in the Big File Window. It has a set of menu items that operate on directorys or on entite sub trees. The current directory is indicated by its highlighted name. The full path to the current directory is displayed in the title bar. You can change the current directory in several ways. You can click with the mouse on a name to activate it. You can move the window using the slider bar and arrow gadgets on the left of the window. You can also use the up and down arrow keys to change the highlighted directory. Following is a complete list of the key strokes that are accepted in the Tree Window: Up Arrow Select the next directory above the current. Down Arrow Select the next directory below the current. PgUp Move window up 14 lines PgDn Move window down 14 lines Home Go to Top of Tree End Go to Bottom of Tree Return Switch to the Big File Window Enter Switch to the Big File Window Plus Switch to the next Logged tree Minus Switch to the previous Logged tree MENUS File Specification: When you select the file specification menu, you will see the history requester. You may enter up to 5 file specification strings. Only files that match these strings will be displayed and operated on. The specifications may contain UNIX style wild cards. The wild cards are '*' and '?'. the '*' matches 0 or more of any character. The '?' matches exactly one of any character. You may also preceed any specification with a '!' to indicate that only files that do NOT match that specification be included. the specifications are entered all on one line separated by blanks. If you need to include a blank in a specification, enclose it in double quotes ("). Examples: *.c Matches all files ending in .c !*.obj Matches all files that are not object files ??? Matches all files whose names have only 3 characters "* *" Matches any file that has a blank in is name To return to all files displayed enter an empty string in the string requester. When you have entered your specifications, click OK. ReLog Current: Relogs the current directory only, not the tree. Edit: Edit Displays the history requester so you can enter the name of a file to edit. You must have set the path to your editor in the Control Window Configuration menu for the edit to work. For Edit to work you must also have the commands RUN and CD in your C: directory. Rename: Rename allows you to change the name of the current directory. You will see the string requester with the name of the current directory for you to edit. After editing the name, click OK to rename. Click CANCEL to abort the operation Make Directory: Make Directory displays the history requester so you can enter the name of a new directory that will be created under the current directory. Verify Tree: Verify reads all files in the current directory and all its sub directorys and reports any that cannot be read. It also gives a summary report at the end of the operation. Find File: Find File searches the entire tree for files matching the pattern you enter. You may enter a filename with UNIX style wild cards. The entire current tree will be searched for a filename that matches. When one is found, its path will be displayed in another requester. Click OK to start the search. Click CANCEL to abort the operation. The wild cards are '*' and '?'. The '*' matches 0 or more of any character. The '?' matches exactly one of any character. You may include up to 8 '*' and any number of '?' in the pattern. When a file that matches your pattern has been found its path is displayed in a requester. You have the choice of 3 actions. Click CANCEL to stop the search and return to the Tree window at the previous location. Click ACTIVATE to go to the Big File Window with the found file active under the cursor bar. Click CONTINUE to continue the search for another file that matches your pattern. Prune: PRUNE will remove the current directory, all of its subdirectorys, and all the files in them. You will see the Prune confirmation requester with the root of the limb of the tree to be removed displayed in it. Click on the NO or CANCEL gadgets to abort the operation. Click the YES gadget to PRUNE. NewCLI: NewCLI will open a new CLI window on the workbench screen. For this to work the RUN command, CD command and either the NewShell or NewCLI commands must be resident in the C: directory. If NewShell is present a Shell window will be opened, else a CLI window will be opened. This command runs asyncronously with FileMinder. You can click the WB screen to the back and resume operations while the CLI window is still open. You can edit the S:Shell-startup or S:CLI-startup file to contain any commands you would like to be run each time the CLI is started. To close the CLI window, enter the EndCLI command into it. Note that a CLI started from a workbench program (like FileMinder) has no path. To have your path used you will have add path commands to the S:Shell-startup or S:CLI-startup file. Since these files are also used to start the CLI from the icon and from a CLI command, and path is set in this case use a 'path reset' to avoid duplicating the path list when starting from the icon. To have another shell (such as Matt Dillon's csh) run under the CLI, delete newshell from C: and put the commands needed to start your shell in S:CLI-startup. V. Big File Window This window shows the files in the current directory in one of three formats. A cursor bar indicates one of the files as the current file. This is the file selected for single file operations. You can Tag files for multiple file operations. A tagged file is indicated with an at sign (@) in front of its name. You may make a file the current file by clicking the mouse on its name. You may tag or untag the current file by clicking the mouse on its name when it is under the cursor bar. The Close gadget returns to the Tree Window. The slider bar gadget and the arrow gadgets at the left of the window allow you to scan through the file list. The Title Bar shows the current path to the displayed files. You may also select that only some of the files in the directory are displayed by entering file specifications with the 'File Specification' menu item. The following keys are accepted by the Big File Window: Up Arrow Move the cursor bar up one file. Down Arrow Move the cursor bar down one file. Right Arrow Move the cursor bar down one column. Left Arrow Move the cursor bar up one column. PgUp Move the window up one window full of files. PgDn Move the window down one window full of files. Home Move the window to the top of the file list. End Move the window to the bottom of the file list. T Tag the file under the cursor bar and advance cursor bar. U Untag the file under the cursor bar and advance cursor bar. Alt-T Tag all matching files in the directory. Alt-U Untag all matching files in the directory. Alt-F Rotates the display through the 3 file display formats. ESC Return to the Tree Window. File Display Formats The first format shows just the file names in 2 columns. Only the first 25 characters of the name are displayed. The second shows the files in a single column. The protection bits, the filesize in bytes and the complete file name are displayed. The third format is also a single column, showing the protection bits, the filesize and the date/time stamp, but only the first 16 characters of the filename. MENUS File Specification: You may enter patterns for the filenames you want shown in the file windows. The default is to show all files. For more details see File Specification under the Tree Window. ReLog Current: Relogs the current directory. Search Tagged Files: Displays the history requester for you to enter a string that will be searched for in all files tagged in the current directory. Any files that contain the string will remain tagged. Any files that do not contain the string will be untagged. The string may be up to 30 characters. Case is significant. Exexute: Executes the current file, if it is executable. No window is opened for it. Only programs that can open their own window or screen will work when executed this way. For this to work you must have the commands RUN and CD in your C: directory. Edit: Edit runs your editor on the current file. You must have set the path to your editor in the Control Window Configuration menu for the edit to work. For this to work you must also have the commands RUN and CD in your C: directory. Rename: Rename allows you to change the name of the current file. You will see the string requester with the name of the current file for you to edit. After editing the name, click OK to rename. Click CANCEL to abort the operation Date: Date allows you to modify the date and time stamp of the current file. Modify the date or time in the string gadgets. Click the UPDATE gadget to update the file. Click the CANCEL gadget to abort the operation. The CURRENT gadget will put the current date and time in the string gadgets. Valid Date Formats: "MMM dd yy" or "mm/dd/yy" "mm-dd-yyy" MMM is the first 3 characters of the month (Jan, Feb, ...) mm is the number of the month (1-12) dd is the day of the month (1-31) yy is the last two digits of the year (19 is assumed as the first 2) yyyy is the 4 digit year (valid range 1978-2099) Any combination of formats will also work ("mm-dd/yy" or "mm dd-yy"). Valid Time Format: HH:MM:SS HH is the hours in 24 hour time (0-23) MM is the minutes (0-59) SS is the seconds (0-59) Comment: You can view and change the comment assciated with a file. When the window opens, the current comment(if any) is displayed in the string gadget. You may edit the text in this gadget. A comment may contain up to 80 characters. When the comment is correct, click the UPDATE gadget to write it to disk. If you decide not to change the comment click the CANCEL gadget. Attributes: You can view and change the file attributes bits (protection bits) for a file. The window appears with the current settings of the 7 bits displayed in 7 gadgets. Each gadget has the letter associated with one of the bits. You may toggle these gadgets on or off to set or clear the corresponding bit. When the bits ar set as desired, click the UPDATE gadget to write the current settings to the file. If you do not want to change any bits click the CANCEL gadget to abort the operation. Following are the meanings of the individual bits: S script file R file is readable P pure file W file is writable A file is archived E file is executable D file is deletable VI. Startup Parameters FileMinder may be started from either its icon or from a CLI window. If you start it from a CLI be sure that the stack is set to 15000. If you don't want your CLI tied up start it with the RUN command. It has 2 startup parameters. They can be entered into the tooltypes array of the icon or specified on the command line. CLI: >FileMinder path -hhome path or PATH= in the icon is the initial tree to log. If this is omitted, FileMinder will log the current directory. home or HOME= in the icon is the location of the FileMinder home directory. This is the directory where it looks for its online help files, and saves its history and config files. VII. Limits Maximum path length = 300 characters Maximum number of directory levels displayed in Tree Window = 17 Maximum number of directorys in a tree = 500 Maximum number of files in a directory = 2000 Maximum number of trees logged at once = 10 Maximum editor path length = 200 characters VIII. Registration & Bugs Fileminder is shareware. If you find it usefull you should send in your registration fee. The fee will get you an update of any future versions. The fee is $10. If you discover any bugs, or if you have any suggestions for improvements, send them also. Bugs and suggestions are welcome even with out the fee. Send TO: Joel Swank 205 NW Meadow Drive Beaverton, OR 97006 (503) 641-6203 IX. Acknowledgements Thanks to R.J. Mical for his ColorWindow and Xtext routines. Thanks to PowerWindows for helping create all the gadgetry. Thanks to Matt Dillon for his programs for ideas on how to do some of these functions. Thanks to Manx for Aztec C 5.0 that I used to develop this program.