Aug-20-92 ~~~~~~~~~ Fixed bug where TagRead would always thing that all messages were new if the case of the name passed to it did not exactly match the case stored in the user.msg file. Changed to a non-case sensitive function. Allowed a bit more room for the message title (and a bit less for to and from). Added T when reading messages to go back to the top of a message. If a user pressed an arrow key when asked for any key, it was as though the user pressed two keys (since arrow keys generate two characters). Now, the extra character is trapped and discarded. Aug-22-92 ~~~~~~~~~ Last read message pointer for before entering TagRead added. The last message a user has read before entering TagRead is now in red, and this message will not change until the user exits TagRead. Added support for the users lines per screen. The new command line syntax is: EXE dlg:tagread "%NAME" %Msg_AreaNumber "%Msg_AreaName" %PORT %SCLENGTH Aug-23-92 ~~~~~~~~~ Oops, fixed where help screen didn't obey user's lines per screen. Also added 8,2,4,6 in menu next to U,D,L,R. Fixed arrow key parsing so that it works remote as well as local... Fixed a couple other bugs. Sept-16-92 ~~~~~~~~~~ Fixed bug where check to see if a message to a user was case sensitive. This resulted in the users name not being printed in a different color if it was not the same case as was passed to TagRead. Now it is not case sensitive. Added % before the translate flags in the usage statement. The lack of these seems to have confused a lot of people, even though DLG owners should know that they are required. Sept-21-92 ~~~~~~~~~~ Print message function now sends tabs if they are present in the message. A Search function has been added. The search is not case sensitive, and will search the title and body of a message for the string. When a match is found, the title of the message is displayed in white. Wildcards (uses Lattice stcpm function): ? matches any single character * matches any number of the preceeding char ?* matches anything ab*c matches ac, abc, abbc, abbbc, etc. ab?c matches abxc, abzc, abyc, etc. ab?*c matches anything starting with ab and ending with c, abc, abzc, abzxc, abzxyc, etc. Note that the entire message is searched (tearline, origin, kludges etc included), so if you search for DLG, every message produced by DLG or DLGMail will match the search. The search function slows the program down a bit when active, but that is to be expected. To re-claim a bit of screen space, the low-message, hi-message, and next unread message are printed in [next/low-hi] format, similar to the standard dlg prompt. Hi-lite for the users name and search string now takes priority over all other hi-lites. Updated help screen to include the above. Now displays version number along with usage when run from the CLI. When a message is read, reply to and next reply are now shown if applicable. The reply to message and next reply will have their numbers shown in purple, until another message is read. Updated the pic in the archive, and added a doc file TagRead.colors to help you keep track of what all the colors on the screen mean. You may wish to put TagRead.colors and TagReadScreen.pic in a seperate archive for your users to download. Sept 24-26 ~~~~~~~~~~ THESE CHANGES NEED A NEW COMMAND LINE!!! SEE THE ENCLOSED TagRead.menuscript. The command line is (all on one line): tagread "%NAME" %Msg_AreaNumber "%Msg_AreaName" %PORT %SCLENGTH %LEVEL NetMailArea YourZone %LEVEL : (the users level) has been added. NetMailArea: is the message area number of your netmail area. Example: 800 YourZone : should be your FIDO zone number for netmail. Example: 1 Reply To Message: ~~~~~~~~~~~~~~~~~ When reading a message, you can now reply. This is implemented using the DLG program SnedMsg. SendMsg must be in your path. The users regular editor is used. If you are in the NetMail area, the reply is sent via netmail. Sysop has the option of sending crash. Entering NetMail requires the GETNODE program (comes with TrapDoor) to be in your path, and your crashmail batch file DLGCONFIG:BATCH/CRASHMAIL.BATCH must be present. When you reply to a message, you cannot use Q I to quote the original message. Therefore, the original message is automatically quoted when you reply. The RelpyTo field of the new message will point back to the message you are replying to. No other thread links are generated. Enter Message: ~~~~~~~~~~~~~~ You can now enter a new message from the main TagRead screen. This uses SendMsg to call the users editor and write a message. The user is prompted for To and Subject. Default for To is ALL, there is no default for Subject. If you are in the NetMail area, you are prompted for an address. Sysop has the option of sending crash. Entering NetMail requires the GETNODE program (comes with TrapDoor) to be in your path, and your crashmail batch file DLGCONFIG:BATCH/CRASHMAIL.BATCH must be present. You cannot enter a private message while in a public area, and you cannot enter a public message if in the netmail area. To get SendMsg to work the way I wanted, I had to kludge it a bit and use dos re-direction in the call string (> and <). I have only tested this under KS/WB 2.0, but it should work under 1.3 just as well. Fixed bug that occured if a user was new to an area. Sept-28-92 ~~~~~~~~~~ Quotes in the message title will mess up SendMsg, so they are replaced with spaces. The -n switch is now part of the sendmsg command line. Oct-5-92 ~~~~~~~~ Fixed bug where TagRead would only allow 127 messages to be tagged. This should have been 1000, and has been fixed. TagRead will still mess up if there are more than 1000 tagged messages. Oct-9-92 ~~~~~~~~ There are no changes to the command line for this version, but PLEASE CAREFULLY READ THE FOLLOWING! Characters greater than the space character are no longer filtered when reading messages. All characters are output to the screen. Two exceptions are 0x7f (DEL) and 0x8d. Kludge lines are still filtered. Fixed a minor display bug or two that were introduced in the previous update. Modified the display message routine a bit. It still isn't even close to perfect, since I am doing it a character at a time. This means that the word wrap still isn't very good, and that kludge lines will mess up the display a bit IF they do not either start at the beginning of the text, OR immediately follow a \r. Some messages have quoted kludge lines including the ctrl-a, ie DM> ^a MSGID: ..., these will look funny. These would be fairly easy to fix, but I would have to re-write the message display routine, which I don't want to do because I have other stuff to do this week, and because I'm getting tired of working on TagRead, and because I'm feeling a bit lazy right now :-). Anyway, all messages should at least be readable. Added support for up to 9 external AmigaDos batch files. These batch files must be located in dlgconfig:batch/, and are called TagReadx.bat, where x is from 1 to 9, EX: dlgconfig:batch/TagRead1.bat. The batch files may be executed when you are done reading a particular message. Note the addition of the B command at the end of reading a message. You must read the entire message before the B option appears. I did it this way because the message file is closed at this point, so the batch file should have read and write access to the message at this point. Each batch file has a description and minimum user level associated with it, these are included in the batch file itself as comments. The following are passed to the batch files: - The full name and path of the current message: msg:100/234.msg - The users name, underlined: Doug_McLean - The message area number: 100 - The message number: 234 - The message area name: Fido: TrapDoor - The user's port: TL0 With this information available, it should be possible to do just about whatever you want to a message. A few sample batch files and utilities are included, use these examples to create your own batch files for TagRead. If you write or find any utilities that are useful in TagRead batch files, please send them to me! NOTE THAT YOU CANNOT GET INPUT FROM THE USER in a batch file, do not use any program that expects input. The batch files are optional, but if they are present they *MUST* have the same format as the example. You do not have to have all 9 batch files, you could (for example) have a TagRead2.bat and a TagRead9.bat and no others. Here is an example batch file. It is included as TagRead9.bat, and will print the information passed to it. .key msg/a,user/a,anum/a,aname/a,port/a .bra [ .ket ] ;255 ;Sample batch file for TagRead echo "*nSample batch file for TagRead*n" echo "Message : [msg]" echo "User : [user]" echo "Area Number: [anum]" echo "Area Name : [aname]" echo "Port : [port]*n" Line 1: DO NOT CHANGE THIS LINE. Each batch file must start with this line, even if you do not need all the information passed to the batch file. Changing this line will result in an error. Lines 2 & 3: These set [ and ] as the characters that will contain information passed to the batchfile. See the echo statements and your AmigaDos guide. Line 4: This line *MUST* start with a ;, and contains the minimum user level required to execute the batch file. DO NOT leave a spave between the ; and the user level, and do not include any extra info on the line. Line 5: This line *MUST* start with a ; and contains the description of the batch file shown to the user. The above lines are position dependent, so the user level must always be on line 4, and the description on line 5. The batch file commands start on line 6, and may include comments. Several sample batch files are included, if you wish to use them YOU WILL HAVE TO EDIT THEM FOR YOUR SYSTEM. tagread1.bat - This batch uses DLGUpload (by Michael Dreher) and Msg2Txt to allow the user to export a message and make it available for download in his private file area. The user may export as many messages as he wants, they are appended to the file. Both DLGUpload and Msg2Txt are included in the archive (Michael, I hope you don't mind me including DLGUpload). Also included is a sample header (Tagged.txt) which the batch file looks for in dlgconfig:text/. Edit this for your system. tagread2.bat - This uses ThreadTag (included) to tag an entire thread of messages, starting at the current message. tagread3.bat - This uses Kludge (included) to show the kludge lines in the current message. tagread4.bat - This uses Lex (comes with DLG) and Msg2Txt to lex check the current message. tagread7.bat - This uses Msg2Txt to export the current message to the printer. Recommended for the Sysop only. tagread8.bat - This uses Msg2Txt to export the current message to a text file. Recommended for the Sysop only. tagread9.bat - This is a sample batch file that merely prints the data passed to it. Read the comments in this one! The best place to put the utilities used by any of the above batch files you wish to keep online is in dlg:. These batch files are intended as examples only! YOU NEED TO EDIT MOST OF THE ABOVE FOR YOUR SYSTEM! WARNING: There is very little (if any) error checking done on the format of your batch files, SO GET THEM RIGHT before putting them online! ************************************************************************* This will probably be the last update (except for any bug fixes) because I want to get on with other projects, and I am tired of looking at the TagRead code... 93-1-2 ~~~~~~ I guess the previous version wasn't the last version.... Changed version numbers to the date. All future releases of whatever I do will use a similar format. Changed name to TurboRead, since it has evolved beyond an easy way to simply tag messages. I only re-named the executable, batch files, the menuscript, etc haven't changed names. I HATED the mile long command line. There was no excuse for it (except that I was lazy), it should be smart enough to find most of the info it needs by itself. The new command line is: TurboRead %PORT YourZone The suggested menuscript is: EXE dlg:turboread %PORT 1 EXE type dlgconfig:text/tagread.done STACK 99999; Of course, you have to create the tagread.done text file... The new menuscript has dis-advantages and advantages (in case you missed this in the DLG echos): Advantages: - Won't re-start a new-scan from the first area (remembers where you left off), - If you enter mess with a forced sig, it will stay forced. Disadvantages: - "Read Tagged" won't appear on the message menu unless there are tagged messages when you enter mess (the reason it used to be called in the menuscript), - DLG will want you to re-read any messages you entered in TagRead. Now messages entered in a newsgroup are addressed to "All". Greg Bastow wanted this, but I can't test it because I don't have newsgroups (I'm STILL looking for a feed). Greg - is this what you meant? TurboRead now checks the user's info and won't use color unless the user has color set (ansi positioning is still used regardless of the user's settings). Opal Sullen asked for this, and some of my users use mono for speed (especially long distance users). Since color is now optional, the date field has been replaced with a flags field that shows the same info as the colors. The flags are: S------ Search String Found -T----- Tagged Message --R---- Reply To/Next Reply ---2--- Message TO You ---Y--- Message FROM You ----F-- Old Last Read -----L- Last Message Read ------N Next Unread Message These are also shown on the help screen. If you want to know the date on a message, you will have to read the message... 93-1-6 ~~~~~~ Fixed bug where your zone was not read from the command line. This resulted in any netmail being entered was addressed to zone 0, and these messages would bounce!