═══ 1. Introduction ═══ File Commander/2 is intended to be an OS/2 version of the popular Norton Commander(tm) DOS program. It implements a subset of the features provided by Norton Commander but adds some features of its own that are only possible under OS/2. The software is currently free, however any donations will be gratefully accepted. The more support I get (especially monetary), the more likely it'll be that I'll continue development of the program. See Contacting the Author for how to contact me. ═══ 2. What it hasn't got ═══ The following features of Norton Commander are NOT (yet) implemented: o User Menu o File search o File tree o History window o Quick View o File name filter o Attribute editor o Directory compare o Most of the Options menu o (there may be some others I've forgotten) ═══ 3. Function key reference ═══ So after all that, you may be wondering what IS implemented? Well here is a list of keys and their functions: o F1: Brings up the online help (fc.inf) or the INF file(s) of your choice. (See Configuration) For this to work, fc.inf (or the files you specifiy) must be in a directory pointed to by the BOOKSHELF environment variable. o F3: Views the current file with the viewer of your choice (no internal). o F4: Edits the current file with the viewer of your choice (no internal). o F5: Copies the current file or currently tagged files. Default destination directory is that of the opposite panel. o F6: As above but moves the file(s). o F7: Make a directory. You are prompted for the name of the directory. o F8: Delete current file or tagged files. There is a double confirmation on a tagged file delete. If you try to delete a non-empty directory, You will get a special confirmation box in which you must type "YES" exactly (in upper case). The entire directory tree from that directory downwards will then be deleted. Only do this if you are really REALLY sure! o F9: Display menu bar. Once displayed you may use the left/right arrow keys to select a menu and the down arrow key to "drop" the menu. You can also drop a menu by pressing the key corresponding to the first letter of its name. Once dropped, you can move a cursor in the menu with the up/down cursor keys and use ENTER to select a menu item. Alternatively, you may select a menu item by pressing the key that is highlighted in the menu item's name. Menu items not yet implemented are greyed out and will not respond to selection. See Menu functions for more details. o F10: Exit FC/2. o Alt-F9: Switch between 25 and 50 line mode. o Ctrl-F1/F2: Switch off/on left or right panel. o Esc: Clear command line. o Tab: Switch cursor between panels. o Ctrl-E: Scroll back through command history. Note that this wraps around. ie pressing Ctrl-E when the oldest command is showing will bring up the newest command. o Ctrl-X: Scroll forward through command history. o Ctrl-R: Re-read the current panel. (Useful if you changed a floppy or if another process has altered the directory contents.) o Ctrl-J: Insert name of current file into command line or if there is a non-space character before the cursor searches history. Note that only text before the cursor is used when looking for a match in history. Note also that if pressed again, the next match from history will be recalled. This key alters the history position used by Ctrl-E and Ctrl-X. o Ctrl-Enter: Same as Ctrl-J. o Enter: Execute command line, or if command line is empty, execute current file. If the file matches an association, then the program associated with it will be used on the file (See Configuration). If the cursor is on a directory, FC/2 will change into that directory. Note that you cannot change directory by entering "cd foo", or change drive by entering "d:". This is not a bug. It's a problem I, as yet, have no solution to. o Alt-Enter: Same as above but the executable is run in a separate session. o Ctrl-O: Turn panels On/Off. Useful if you want to see the output of the program you just ran or if you just want a command line for a while. o Ctrl-\: Moves to the root directory of the current drive. o Ctrl-L: Toggles drive information panel on/off. Shows drive total space, free space, number of files and total bytes occupied by current directory, the drive's label, file system and serial number. o Insert: Tag/Untag current file and move cursor down. o Home: Moves cursor to the first file on the panel. o End: Moves cursor to the last file on the panel. o Ctrl-Home: Moves command line cursor to the start of the line. o Ctrl-End: Moves command line cursor to the end of the line. o Cursor Up/Down: Moves the cursor up or down one file name. Will scroll window if necessary. Also if panels are off, scrolls through history. o Cursor Left/Right: Moves the command line cursor, or if "Brief" view is selected, moves cursor over one column. o Grey +: Tag files by wildcard. Note that this uses REAL wildcards. ie "*" matches EVERYTHING, "*x*" matches everything with an 'x' in it, "??*" matches everything with 2 or more characters, etc. o Grey -: Same as above, only UNTAGS. o Alt-letter/number: Holding down ALT and typing a partial file name will move the cursor to the first file matching that partial name. ═══ 4. Menu Functions ═══ The following menu items have been implemented so far: Left/Right: Brief - change left/right panel to brief file view. Full - change left/right panel to full detail file view. Info - make left/right panel display drive info for opposite panel (or switch back to normal if already on). On/Off - Switch left/right panel on or off. Name/Extension/Time/Size/Unsorted - Sort panel according to selected key. Re-Read- Re-read the contents of panel (same as Ctrl-R) Drive - Select a new drive for panel (same as Alt-F1/F2) Files: Same functions as F1-F10, Grey-+/-. Commands: EGA Lines - Switch between 25 and 50 line mode (same as Alt-F9) Swap Panels - swap left and right panels (same as Ctrl-U) Panels On/Off - Show/remove panels (same as Ctrl-O) Options: Clock - show/remove clock. ═══ 5. Advantages over NC in a VDM ═══ Why use File Commander/2 instead of Norton Commander in a DOS session? FC/2 offers the following benefits over Norton Commander in a VDM: o HPFS long filename support. Long names can be seen and used wherever you would expect. Also if no files are tagged, up to 36 characters of the current file name are displayed at the bottom of the panel. If file name is to long to fit in the file name column of the panel, the first 12 characters are shown with an arrow indicating there is more. Also the case of file names isn't lost. o Can execute OS/2 programs (PM and text mode) as well as DOS and Windows programs. o Can spawn off child processes (Run commands in a separate session). o Doesn't hog CPU time when idle. o Better wildcards. o Copy/Move will handle a directory tree if the source file name is a directory. o Starts up faster (no VDM to start). o Uses less system resources than a DOS session. (a VDM uses ~1MB of system memory). o Association by wildcard instead of just extension. ═══ 6. Configuration ═══ Configuration is done with the file fc.ini which must be in the same directory as fc.exe. It contains statements in the form: keyword=value to set a configuration setting (see Configuration keywords for valid forms) or wildcard:program [switches] [! switches] to create an association. The effect of this is to use "program" on any file matching "wildcard" when ENTER is pressed on the file. A '!' character on the right of the ':' will be replaced by the file name when "program" is executed. If there is no '!', the file name will be added to the end. This is useful if you need parameters AFTER the file name. e.g. *.dsk:loaddskf ! a: *.zip:unzip *.inf:view *.ico:iconedit *.zoo:zoo x *.tif*:pmview (matches both x.tif and x.tiff, not actually sure if pmview handles tiffs...) Do NOT use spaces around the '=' or ':' or at the start of the line. Any line not containing an '=' or ':' will be ignored entirely. Do not use quotes around string values. (used below for clarity only) ═══ 6.1. Configuration keywords ═══ o background String prepended to a command to start it in a separate session. Default "start /f /c" o clock=12|24|off Specifies whether a clock should be shown and what type. o editor name of editor used when F4 is pressed. Default is "e" o help names .inf files viewed by pressing F1. (Default is "fc.inf") The .inf files must be found in directories listed in the BOOKSHELF environment variable. eg 4os2.inf+cmdref.inf o hidden=on|off Specifies if hidden files will show up. Default off. o leftsort,rightsort Sets the sort key for the left and right panels. Value can be: name : Sort by name only extension : Sort by extension, then name time : Sort by time/date (newest first), then name size : Sort by file size (largest first), then name o leftstyle,rightstyle=brief|full Sets the display type for left and right panels. Default is full. o nokbd=on|off If set to on, disables use of the OS/2 API keyboard subsystem. Use this if you are experiencing Trap 000E or exception in driver KBD$. This seems to be due to a bug in the Dec 2.1 beta. The catch is that with this option on, you must use Alt-grey +/- to tag/untag files instead of just grey +/- If you find you need this option, please contact me telling me which version of OS/2 you are using and a little bit about your setup especially AMI keyboard BIOS version. o numlock=on|off Specifies if numlock should be fixed on or not (affects both FC/2 and any program started by FC/2. Note: does NOT work for a windowed session as PM keeps its own idea of keylock status. o right directory that the right panel starts in. The left panel is always the current directory. o saver Specifies number of minutes before the screen saver starts. o viewer name of file viewer used when F3 is pressed. Default is "list" as in the one built into 4os2. ═══ 7. Contacting the Author ═══ I would appreciate some feedback including bug reports, suggestions, most missed NC features etc. You can contact me by either of the following means: Internet: s902150@minyos.xx.rmit.oz.au (at least until end of 1993) Snail Mail: Brian Havard 16a Rennison St, Mordialloc 3195, Victoria AUSTRALIA ═══ 8. Licence ═══ Since this software is free, it is supplied WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. It is supplied as is, in the hope that people will find it useful. You are free to copy this software ONLY if you include this document file with it. You may NOT charge anyone for a copy of this software other than a small copying fee. You may NOT include this software with any commercial software without the consent of the author. Norton Commander is a trademark of Symantec Corporation. ═══ 9. Release History ═══ o 13/4/93 v0.1 Initial Release o 28/4/93 v0.11 o 24/05/93 v0.12 ═══ 9.1. Version 0.11 ═══ o Fixed bug that caused lockup if a history search found no match. o If an executed program changes directory contents, cursor stays on same file name. o Improved logic of and documented file name seeking. (Alt-letter/number) o Added clock. o Added screen saver. o Cursor should now be in the right place after changing up a directory. This was only wrong after using Alt-F1/F2 to change to a drive who's default directory was not its root. o 43/50 line mode support added. As the EMX static link library doesn't support >25 lines, emx.dll is now required. Note that in a windowed session you can have as many or few lines as you like although things start getting a little mixed up with less than 16. Before running FC, use "mode co80,n" where n is the number of lines. o No harderr popup if no disk in drive. o Option to deselect use of KBD subsystem if causing traps. o ".." entry not shown at root of HPFS drive. o Several other minor bugs I didn't bother to note down. ═══ 9.2. Version 0.12 ═══ o Prevent view or edit of a directory. o Use of '!' in associations. o Preservation of tagging when program executed. o Ctrl-U panel swap. o Menu system added. o Panel (single) on/off - Ctrl-F1/F2 o Sort by Name/Extension/Time/Size/Unsorted o Brief (3 column, no details) file view o Clock can be turned on/off from menu o Moved from EMX/GCC to Borland C++ which required a fairly major operation to convert from the EMX windowing library to Borland's. o Wildcards can now be used in destination specification to modify file names with rename/move/copy operations. o Altered use of KBD subsystem to stop Trap problems (I hope). o Capitalization of directory names on FAT volumes. o Deletion of directory trees using F8. Also allows F6 to move a tree between drives successfully. o Converted documentation to INF format. o Added volume label, file system and serial number to Info panel.