This file describes some add-on programs and files for QWKPRUNE. $$1300.CMD and UNKILL.CMD ----- $$1300.CMD and UNKILL.CMD are sample 1stReader .CMD files for use with QWKPRUNE. To install them, simply copy both files to the directory 1stReader is in. If you already have a $$1300.CMD or $$13.CMD file, rename $$1300.CMD to KILL.CMD before copying it to the 1stReader directory, and add "Kill messages,FILE=KILL.CMD" to your $$1300.CMD or $$13,CMD file. Once the files are installed, you can call up $$1300.CMD by pressing F7 while a message is on the screen. If a message is not on the screen, $$1300.CMD will not come up when F7 is pressed. $$1300.CMD and UNKILL.CMD contain entries for KILLMSG and ZIPPYZAP. KILLMSG 1.04 ----- KILLMSG is a program to allow users of 1stReader to tag messages to be deleted by QWKPRUNE. Users may also untag messages and check if the messages on the screen is tagged. To install it, copy KILLMSG.EXE to the directory where 1stReader is located. You'll also need to install $$1300.CMD and UNKILL.CMD. The entry in $$1300.CMD labeled "Current Message" calls KILLMSG to tag the current message to be deleted. UNKILL.CMD also has an entry labeled "Current Message", which calls KILLMSG to untag the current message. If the current message has been stitched together by 1stReader, KILLMSG can tag or untag the whole message, starting with the first part loaded. For example, if you use the message index screen to find the second part of a four-part message, and choose to delete it, parts 2, 3, and 4 will be tagged, but part 1 will not be. If you don't want KILLMSG to behave this way, remove @API(212) from the commands used to call it. KILL.BAT, UNKILL.BAT, and CHECK.BAT are batch files that contain 1stReader commands to have KILLMSG tag, untag, and check messages, respectively. They can be used to assign these functions to function keys. For example, if you want pressing Shift-F1 to kill the message on the screen, copy KILL.BAT to the directory 1stReader is in and rename it $$F1.BAT. If no message is on the screen, or if you are in the Folders or Replies conference, KILLMSG will exit. Note: KILLMSG checks for the existence of a file in the work directory named MESSAGES.BAK. If it doesn't exist, MESSAGES.DAT will be copied to MESSAGES.BAK. All work will be done on MESSAGES.BAK. This is necessary because 1stReader has a habit of resetting the message-deleted flag in each message header to its original value. If you're using 1stReader's bookmark switch to repack the QWK, rename MESSAGES.BAK to MESSAGES.DAT just before quitting the packet. 1stReader inserts the bookmark before running $$EXIT.BAT. ZIPPYZAP 1.02 ----- ZIPPYZAP allows users of Deluxeý, 1stReader, and Session Manager to tag all messages found by those readers' Zippy text search for deletion by QWKPRUNE. It can also untag these messages. Install it by copying ZIPPYZAP.EXE to the directory where your reader is located, or to a directory in your DOS path. The command line format is: ZIPPYZAP switch work_dir [reader] Switch is either a K or a U, and specifies whether messages are to be killed (K) or unkilled (U). Work_dir is the work directory defined in the reader's configuration. Reader is either /1 for 1stReader or /S for Session Manager. If /1 is used, ZIPPYZAP will create and use MESSAGES.BAK, as described for KILLMSG. The sample menus for Deluxeý and 1stReader have entries for ZIPPYZAP. A macro such as zippyzap K [work_dir] /S should work in Session Manager. Replace [work_dir] with the work directory defined in Session Manager's configuration. Session Manager won't show if a message is tagged for deletion, and I know of no way to get that information from within it. If anyone does know of a way, please let me know. ZIPPYZAP has only been tested with Deluxeý, 1stReader, and Session Manager. If other readers have a Zippy text search, it may (or may not) work with them. ZIPPYZAP can be also used with 1stScan. This will allow you to prune out messages based on their text. If you want to leave the messages tagged, and aren't using 1stReader, delete the ZIPPY.NDX file created by 1stScan after ZIPPYZAP is finished. When it runs, QWKPRUNE will delete this file. Messages tagged by KILLMSG and ZIPPYZAP can be unkilled by entries in a prune file. To be sure that all tagged messages are deleted, use QWKPRUNE's /N switch. SAVEQWK 1.10 ----- SAVEQWK allows users of 1stReader to repack the current QWK packet, saving any changes that have been made. Install it by copying SAVEQWK.EXE and SAVEQWK.FIL to the directory where 1stReader is located. SAVEQWK requires no command line arguments. However, it accepts /u and /r as arguments. If /u is used, only MESSAGES.DAT will be repacked. SAVEQWK will detect the MESSAGES.BAK file used by KILLMSG and ZIPPYZAP, and rename it MESSAGES.DAT before calling the packer. Unless the /u switch is used, MESSAGES.BAK will no longer exist, so you should only do this just before quitting the packet. If the /u switch was used, MESSAGES.DAT will also be renamed MESSAGES.BAK before the packer is called, and the filenames will be swapped back after it's finished. If the /r switch was used, MESSAGES.BAK will be renamed to MESSAGES.DAT, but the packer will not be called. N.B. If you're using a version of 1stReader dated before March 14, 1993 change the fourth line of SAVEQWK.FIL to @API$(0). This version has been modified to detect whether a 1stReader database file is being read. If so, it will exit without doing anything. Previous versions of SAVEQWK.FIL will not work with this version of SAVEQWK.EXE, and the new SAVEQWK.FIL will not work with previous versions of SAVEQWK.EXE. MKPRN 1.01 ----- MKPRN is a utility to add a line to a prune file from within a mail reader. Install it by copying it to the directory where your reader is located, or to a directory in your DOS path. Your reader should have configurable function keys or user-definable menus. It should also have substitution variables which can be used in function key definitions or menu entries. It needs to have variables for the BBSID of the board the packet is from, the contents of the From: and To: fields, and the subject line. It helps if there's a variable for the conference number the message is in, but this can be omitted. Check the manual for your reader to see if it has substitution variables and what they are. Of course, it may also be run from the DOS command line. The command line format is: MKPRN filename "switch:text" conf_num Switch must be a valid prune file switch, such as T, F, B, S, or N. See QWKPRUNE.DOC for details. Text is the text to search for, and should be represented by one of your reader's substitution variables. The whole combination must be enclosed in double quotes so that it will be treated as a single argument, regardless of how many spaces may be in the text. Filename is the name of the file to write to. If your reader has a substitution variable for the BBSID of the board the packet is from, use it. It's best if you specify the directory where the file should go. Conf_num is the number of the conference the message is in. If your reader doesn't have a substitution variable for this, you can omit it, and use your editor to enter the conference number. You can also use A (for all conferences). Place an exclamation point in front of this to generate an "unkill" line. If the text to search for contains double quote marks, it'll be parsed into multiple arguments. In such cases, MKPRN will exit without writing to file. Text like this can be added to the file with the DOS echo command and output redirection. KMSG-D2 1.01 ----- KMSG-D2 is a program to allow users of DeLuxeý to tag messages for deletion by QWKPRUNE. Messages may also be untagged. To install it, copy KMSG-D2.EXE to the directory where DeLuxeý is located. The command line format is: KMSG-D2 switch %H %W\Q-WORK\MESSAGES.DAT Switch is either a K or a U, and specifies whether messages are to be killed (K) or unkilled (U). %H represents the current help record, and %W\MESSAGES.DAT is the path to MESSAGES.DAT. KMSG-D2.EXE utilizes the Qmail DeLuxeý API definition. The Qmail DeLuxeý API definition is copyrighted by Mark Herring. The C code used to access the Qmail DeLuxeý API is copyrighted by myself. VIDGRAB 1.00 ----- VIDGRAB gets selected information about a message, such as the message number, from the screen, and writes it to a prune file. To install it, copy VIDGRAB.EXE to the directory where your reader is located, or to a directory on your DOS path. The command line format is: VIDGRAB [/ccfg_file] [/nconf_num] switch field [prune_file] Cfg_file is the name and path of the configuration file to use. If it's not specified, the config file is named VIDGRAB.CFG, and is located in the same directory as VIDGRAB.EXE. Conf_num is the conference number of the current message. If this is used, it's not necessary to give the screen location of the conference number in the configuration file. Switch is either a K or a U, and specifies whether messages are to be killed (K) or unkilled (U). Field specifies what information you want to grab from the screen. Valid values are FROM, TO, SUBJECT, and NUMBER. Prune_file is the file to write to. If it contains @BBSID@, the BBSID for the current packet will be taken from CONTROL.DAT, or from the screen, and substituted for @BBSID@. If this is not given, @BBSID@.PRN is assumed. The configuration file contains the location, in ROW,COLUMN form, of the FROM name, TO name, SUBJECT, message NUMBER, and conference number. Note that ROW and COLUMN numbers start at 1, not 0. The config file may also contain information on how to find the BBSID. This should either be a screen location, or a complete path to CONTROL.DAT (including the filename). See the VIDGRAB.CFG file included in the archive for more information. If you have an old CGA monitor that requires snow checking, put SNOW = YES in the configuration file. Note: VIDGRAB will only work if your reader has an option to not clear the screen when running an external program. Also, it assumes that your screen is in 80 column text mode, and cannot read graphics screens. FILGRAB 1.00 ----- FILGRAB gets selected information about a message, such as the message number, from a file, and writes it to a prune file. To install it, copy FILGRAB.EXE to the directory where your reader is located, or to a directory on your DOS path. The command line format is: FILGRAB [/ccfg_file] [/nconf_num] [/fdata] switch field [prune_file] Data is the name of the file to get the information from. All other command line options are the same as for VIDGRAB, except that the default name for the configuration file is FILGRAB.CFG. The name of the data file can also be set in the configuration file by using the FILE option. The other configuration options work the same as in VIDGRAB, except that the numbers refer to line and column numbers within the data file. See the FILGRAB.CFG file included in the archive for more information.