4COMMENT V 1.2 9/01/92 (c)Copyright Saturn Software & John Bintz 4COMMENT extracts file descriptions from a bbs list or a formatted capture file, matches them to existing files, and installs the descriptions: 1. As comments into an achieved file (zip, arj, pak, zoo). 2. As a description in the 4dos file "descript.ion." 3. Or into a separate text file. Alternatively, it will extract the comments from a archive file and make a file list. A variety of formats are possible for both the comment and text files. LIMIT OF LIABILITY 4COMMENT is distributed as is. The author makes no representation with respect to the fitness of the software for any particular purpose and disclaims all warranties, expressed or implied. The author will assume no liability for damages either from the direct use of this product or as a consequence of the use of this software. SHAREWARE 4COMMENT is distributed as shareware. This means you can evaluate the product before you decide to register it. If you are using it after a couple of weeks, you should register it. You can copy 4COMMENT or any shareware program and distributed to anyone else, provided that neither the program nor the documentation is altered and that you do not charge a fee. Because there is no advertising, distribution, or packaging cost, the price of a shareware program is often less than an equivalent package sold through retail channels. The registration form is provided in a separate file. SYNTAX: 4COMMENT Displays help file 4COMMENT DIRN FILEMASK [-c] [-4] [-t] ... -c :Installs file description as zip/arj/pak/zoo comment -4 :Installs short description in 4dos descript.ion -t :Installs file description in text file named "dir" in the current subdirectory. If such a file already exists, any new material will be appended to it. Consequently, 4COMMENT can be run multiple times. -g :Gets file description from comment in zip/arj/pak/zoo and appends to DIRN. -m :Mark file so that it won't be processed on a subsequent pass through the subdirectory -pN :Get description which starts at column N. If this option is used with -t or -c, the file date and size comes from the filestamp rather than the file description. DIRN: Must be a qualified filename such as J:\DIRS\DIR4 or just the filename if it resides in the current subdirectory. It contains the descriptions of the files to be processed. The file can be a BBS filelist, a captured session file, or most any file which is formatted consistently. FILEMASK Can be a qualified filename or any set of ambiguous characters that DOS permits, such as "j:\dl\myfile?.*". The '-t' and '-4' options will work regardless of extensions; the '-c' option will not because 4COMMENT uses the text of the extension to decide what program to shell to. For example, the extension "zip" would cause 4COMMENT to shell to pkzip if the '-c' option were in effect. If the zipped file was named "myfile.zi1", no shelling would take place and no comments would be installed. Any compression program (PKZIP, ARJ, PAK, ZOO) used must be located somewhere on the DOS path for the -c option to operate correctly. Input description file A fair amount of latitude is permitted on the formatting of the input file most of which will be invisible to the user. 1. If the input file is a captured file, much of the line noise will be eliminated during processing. 2. If the list is produced by PCB, Opus, Auntie, Wildcat in either the one or two-line formats, dbbs, or Remote Access, the format will be read correctly and converted to PCB (or something else) before it is output in text or archive comment. 3. Any listing which is formatted in the order of filename, size, date, description should be processed correctly. 4. Any listing which is formatted in the order of file stem, file ext, size, date, description should be processed correctly. 5. Any listing which is formatted filename, file description should be processed correctly. Whenever the size and date is not found in the listing, it is obtained from the file stamp. 6. With the -p option, any listing in which the file description starts at a consistent column should be processed correctly. 4DOS 4COMMENT processes the "descript.ion" found in the subdirectory specified in the filemask, or creates one if none exists. 4COMMENT is compatible with either the 40 character descriptions of V3 or the 4096 character descriptions of V4. It handles a maximum of 500 files per directory. However, if there were many files approaching the 4096 character comment limit, memory would become a problem before the file limit was reached. In 4DOS, the text of the comment is limited to 40 characters. 4COMMENT takes the comment to be the first 40 characters of the description which is roughly the equivalents of the first line of a PCB description. However, PCB allows 43 characters so there may be some truncation if the text file is a PCB dir file or any other file that exceeds the 4DOS limits. If there is a "descript.ion" file, new entries are added corresponding to the files processed. If an entry for a file already exists, it is replaced by the new description. 4DOS V3 and V4 differ in their handling of entries to "descript.ion". In version 3, the entire entry is text and it can be 40 characters long. In version 4, extended descriptions are permitted and the entire description can be up to 4096 characters long. Only 40 characters (by default) are displayed and the remainder can be used by other programs for whatever purpose. A control 'd', demarks the beginning of each area used by another program. 4COMMENT takes this into account whenever there is a new description to a file that already exists simply by appending the extended section to the new description. If the monitor on which 4comment is used displays more than 80 characters per line (or less than), the maximum length of the description can be altered with the 4len option in the configuration file as discussed later. If the input file contains multiline file descriptions, words will be wrapped around until there is no more space at the width specified for "descript.ion." Compressed files Regardless of the original form of the description, 4COMMENT converts it to a PCB type of description by default and installs the description in that format as a comment. All compressed filetypes (zip, arj, pak, zoo) will allow multiline comments. When extracting comments with the -g command to make a filelist, just the portion of the comment that describes the file is extracted. Extraneous messages, bbs identification etc. are not added to the filelist. The demands are specific enough that a file description installed by some means other than 4comment might not be extracted. The compressor version worked with are pkzip110, arj222, zoo210, and pak210. While I looked at arc601 and lha113, either they didn't allow for comments or I didn't discover how to make them work. If an error is reported back from one of the compression programs, a message is displayed on the screen to the effect that an error occurred during the run. A file ("4COMMENT.ERR") is created which specifies the file(s) in which there an error occurred. The default comment format is identical to a PCB dir listing. The default can be varied in a variety of ways as discussed in the section on configuration files. Text file If the text file option is chosen, file entries will be formatted in a PCB format (unless otherwise directed) and installed in a text file called "dir." That file will be located in the subdirectory that 4COMMENT is initiated from, rather than in the subdirectory being operated on. Another filename or path for the text file can be forced by entering its name directly following the "-t" option, e.g. "k:\robo\dl.txt". The file is compatible with pcbfiler and should be compatible with any other utility that you use to process dir files. The default text file format is PCB dir listing. The default can be varied in a variety of ways as discussed in the second on configuration files. File Marking File marking is intended for BBS sysops or others who repeatedly process the same subdirectory because of new files being added. When marking is enabled by the "-m" switch, the time stamp of the file is converted to a predefined time. When the subdirectory is processed again with the "-m" switch, those files time stamped with the predefined time are skipped. The time is defined in the environment with a set statement in the autoexec.bat or with a set statement (from the command line or in a batch file) prior to the running of 4COMMENT. For example, set 4COMMENT=01:02:12 (no spaces) Any portion of the time can be omitted from the predefinition. E.g. the statement: set 4COMMENT=::12 would result in processing all files except those stamped with a 12 in the "seconds" location. The advantage of doing this is that the altered time stamp would not be displayed with a "dir" command. The disadvantage is that one file in 30, on the average, would not be processed correctly. (One in thirty, because DOS allows only 30 unique numbers and the unit is really double-seconds rather than seconds). If minutes are also stamped, the probability of a false positive is reduced to 1 in (60x30). Configuration file: Normally a configuration file is not required. However, it can be used to: (1) Alter the format of the textfile or comment. (2) In lieu of setting an option on the command line. (3) Alter the default 4dos description length. The configuration file, if it exists, must be named "4comment.cfg" and must be located in the current subdirectory or the subdirectory from which 4comment is invoked. An example of a configuration file: ;pcb_ind 32 ;output indent of pcb DIR secondary lines ;pcb_ll 79 ;output line length of pcb DIR lines ;textfile dir ;mask c:\t6\*.zip ;infile r:\dirs\dir6 ;4len 40 ;bbsout pcb ;bbsout dbbs ;bbsout auntie ;bbsout opus ;bbsout wildcat1 ;bbsout wildcat2 ;bbsout files.bbs ;bbsout filename.ext ;-4 ;-t ;-m ;-g The format of a configuration file line is either a switch defined identically to a command line switch or a keyword followed by at least one space and a value. Anything which follows a semicolon is assumed to be a comment and not an operative statement. The operative keywords and switches are: bbsout Sets the archive file comment and textfile to a bbs format other than PCBoard. Options are auntie, dbbs, filebbs, wildcat1 for 1 line, wildcat2 for 2 lines, opus, files.bbs, and filename.ext. This is independent of the format of the filelist. 4comment should sense whatever format and convert it to the output specified by bbsout. pcb_ind Sets the indent of PCB extended description to something other than the PCB default. This statement is not operative if bbsout has be set to something other than PCB. pcb_ll Sets the length of PCB lines to something other than the PCB default. Setting this option will probably gum up PCBFiler and shouldn't be altered normally. -4 These switches set 4command options in the same manner as they -m are set from the command line. If one of these switches is set -c in the configuration file, they are reversed if the switch -g is also specified in the command line. E.g. 4dos comments will be installed if "-4" is specified in either the configuration file or on the command line. They will not be installed if "-4" is specified in neither or both. -t[file] Specifies a textfile with an optional name as it does on the command line. If a textfile is specified in the conf file, "-t" on the command line turns off the textfile if no name is specified. If a name is specified, the command line name takes precedence. textfile Changes name of textfile produced when the -t option is specified from the default filename "dir" to something else. mask Specifies path and mask for files to be checked, eg c:\t6\*.zip infile Specifies file in which the file descriptions are specified, e.g. r:\dirs\dir6 4len Changes the maximum length of a 4dos description entry from 40 to whatever is specified. History V 1.0 11/22/91 Introduction V 1.1 11/30/91 Added command line switches -g, -m Optional textfile filename V 1.2 09/01/92 Added command line switch -pN Altered file input routines so that more file formats can be detected and process correctly. Output routines changed to increase the number of output formats for the textfile and comments within archives. 4dos description length configurable.