MR/2 A QWK Compatible Offline Mail Reader for OS/2 Text Mode Version 2.0 User's Manual Table of Contents ================= Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 1 Disclaimer of Warranty . . . . . . . . . . . . . . . . . . . . 1 Registration Policy . . . . . . . . . . . . . . . . . . . . . . 2 Upgrades . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Bug Reports, Suggestions and General Feedback . . . . . . . . . 3 Major Features . . . . . . . . . . . . . . . . . . . . . . . . 4 A Brief Introduction to QWK Packets and Offline Reading . . . . 7 Reading Mail Offline . . . . . . . . . . . . . . . . . . . . . 8 System Requirements . . . . . . . . . . . . . . . . . . . . . . 9 Command Line Parameters . . . . . . . . . . . . . . . . . . . . 9 Installing MR/2 . . . . . . . . . . . . . . . . . . . . . . . 10 Optional Support Files Distributed Separately . . . . . 10 MR/2 Setup - the MR2.INI file . . . . . . . . . . . . . . . . 11 INI File Parameter/Options - Alphabetical Listing . . . 12 Using MR/2 for the First Time . . . . . . . . . . . . . . . . 13 Menus . . . . . . . . . . . . . . . . . . . . . . . . . 13 Selection Lists . . . . . . . . . . . . . . . . . . . . 13 Selecting a QWK Packet . . . . . . . . . . . . . . . . . . . 15 Deleting a Packet . . . . . . . . . . . . . . . . . . . 15 Renaming a Packet . . . . . . . . . . . . . . . . . . . 15 Relisting the Packets Available . . . . . . . . . . . . 16 Changing your current Packet Path . . . . . . . . . . . 16 Merging Multiple Packets . . . . . . . . . . . . . . . . 16 Modifying the MR2.INI file . . . . . . . . . . . . . . . 18 Entering Message for a BBS without a Packet . . . . . . 18 Toggling the Video Display Mode . . . . . . . . . . . . 19 The "Unpacking" Process . . . . . . . . . . . . . . . . . . . 20 ----------------------------------------------------------------- MR/2 User's Manual - Table of Contents Page i Packet Main Menu . . . . . . . . . . . . . . . . . . . . . . 21 Mail . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Searching All Conferences . . . . . . . . . . . . . . . 22 Adding/Dropping . . . . . . . . . . . . . . . . . . . . 22 Reading Messages . . . . . . . . . . . . . . . . . . . . 23 Message Sort Order . . . . . . . . . . . . . . . . 23 Using the Spacebar . . . . . . . . . . . . . . . . 24 Mousing Around . . . . . . . . . . . . . . . . . . 24 Selecting Messages by Header Information . . . . . 25 Replying . . . . . . . . . . . . . . . . . . . . . 26 Using an Editor in a Separate Window/Session . . . 27 Killing the Current Reply . . . . . . . . . . . . . 28 Modifying a Reply . . . . . . . . . . . . . . . . . 28 Searching . . . . . . . . . . . . . . . . . . . . . 28 Multiple Search Strings . . . . . . . . . . . . . . 29 Soundex Searching . . . . . . . . . . . . . . . . . 29 Examining Search Results . . . . . . . . . . . . . 29 Searching All Conferences . . . . . . . . . . . . . 30 Saving to a Text File . . . . . . . . . . . . . . . 30 Reading by Subject/Thread . . . . . . . . . . . . . 30 Fast Exit from MR/2 . . . . . . . . . . . . . . . . 30 Spawning an OS/2 command line . . . . . . . . . . . 31 Printing . . . . . . . . . . . . . . . . . . . . . 31 Stealing Taglines . . . . . . . . . . . . . . . . . 31 Entering a New Message . . . . . . . . . . . . . . 31 Quick Thread Summary Screen . . . . . . . . . . . . 32 Displaying Embedded ANSI Escape Sequences . . . . . 32 Copying a Message (Carbon or Silicon Copies) . . . 32 Forwarding a Message . . . . . . . . . . . . . . . 33 Deferring a Message . . . . . . . . . . . . . . . . 33 Zipping (Skipping) to Next Unread Message . . . . . 33 Copying to the System Clipboard . . . . . . . . . . 33 Jumping to a Logged Reply's Source Message . . . . 34 Recording a Message's Address in the Address Book . 34 Rewrapping a Message for Display . . . . . . . . . 34 Unkilling the Current Reply or Message . . . . . . 34 Marking a Reply Log Message as Permanent . . . . . 35 Simple Encryption/Decryption - Rot13 . . . . . . . 35 Changing the Default Tab Expansion Size . . . . . . 35 Checking the Spelling of an Existing Reply . . . . 35 Using the Thesaurus with an Existing Reply . . . . 36 Write New - Creating New Message . . . . . . . . . . . . 37 New File Listings . . . . . . . . . . . . . . . . . . . 37 Bulletins . . . . . . . . . . . . . . . . . . . . . . . 38 The NEWS File . . . . . . . . . . . . . . . . . . . . . 38 Packing Replies On Demand . . . . . . . . . . . . . . . 38 Exiting the Current QWK Packet . . . . . . . . . . . . . 39 ----------------------------------------------------------------- MR/2 User's Manual - Table of Contents Page ii The Internal Editor . . . . . . . . . . . . . . . . . . . . . 40 Search . . . . . . . . . . . . . . . . . . . . . . . . . 40 Search and Replace . . . . . . . . . . . . . . . . . . . 41 Search Again . . . . . . . . . . . . . . . . . . . . . . 41 Marking and Bounding a Block of Text . . . . . . . . . . 41 Unmark . . . . . . . . . . . . . . . . . . . . . . . . . 42 Save and Exit . . . . . . . . . . . . . . . . . . . . . 42 Exiting without Saving . . . . . . . . . . . . . . . . . 42 HOME and END . . . . . . . . . . . . . . . . . . . . . . 42 Toggling the Display of Marker Characters . . . . . . . 43 Importing and Exporting Text . . . . . . . . . . . . . . 43 Optional Utilities - Spelling Checker and Thesaurus . . 43 The Internal Spelling Checker . . . . . . . . . . . . . . . . 44 The Internal Thesaurus . . . . . . . . . . . . . . . . . . . 47 ALT-S Search for more . . . . . . . . . . . . . . . . . 48 ALT-L Lookup this word . . . . . . . . . . . . . . . . . 48 ALT-E New search word . . . . . . . . . . . . . . . . . 49 ALT-A Append word . . . . . . . . . . . . . . . . . . . 49 ALT-I Insert word . . . . . . . . . . . . . . . . . . . 49 ESCAPE Back one level . . . . . . . . . . . . . . . . . 49 ALT-X Exit thesaurus . . . . . . . . . . . . . . . . . . 49 Advanced features . . . . . . . . . . . . . . . . . . . . . . 50 Internal Spelling Checker and Thesaurus . . . . . . . . 50 External Spelling Checker . . . . . . . . . . . . . . . 50 Local INI files . . . . . . . . . . . . . . . . . . . . 51 Virtual Conferences . . . . . . . . . . . . . . . . . . 52 Template Files and Sections . . . . . . . . . . . . . . 54 Template Variables . . . . . . . . . . . . . . . . . . . 56 Additional Notes about Variables . . . . . . . . . . . . 61 Address Book . . . . . . . . . . . . . . . . . . . . . . 63 Selecting from the Address Book . . . . . . . . . . . . 64 Address Book Maintenance . . . . . . . . . . . . . . . . 64 Configuring for Multiple Archivers . . . . . . . . . . . 65 Merging Packets . . . . . . . . . . . . . . . . . . . . 65 Running Multiple Copies of MR/2 . . . . . . . . . . . . 66 Reply Log . . . . . . . . . . . . . . . . . . . . . . . 67 Cut/Paste - Accessing the PM Clipboard . . . . . . . . . 68 Notes on Running External Executables . . . . . . . . . 68 INI File Parameter/Options - Detailed Descriptions . . . . . 70 CONTACTING THE AUTHOR . . . . . . . . . . . . . . . . . . . . 86 REGISTERING MR/2 . . . . . . . . . . . . . . . . . . . . . . 87 ----------------------------------------------------------------- MR/2 User's Manual - Table of Contents Page iii MR/2 - A QWK Compatible Mail Reader for OS/2 User's Manual - Version 2.0 Introduction ============ MR/2 is an offline mail reader for use with QWK compatible mail packets. It is a native OS/2 character-mode reader written in C++, using Zortech's 3.0 release. Simple help screens are available at any time by depressing F1. If you find a spot where HELP is unavailable, please report this to the author. The package was initially tested under OS/2 1.3, however, most later development and testing was performed using the version 2.0 and 2.1 releases. This IS a shareware package, and does require a registration fee if you choose to continue using it after 30 days. The registration fee is currently $25. When you register, you will be sent an individually serialized MR2.ID file. This file is placed in the MR/2 home directory, and the "NR" markings are removed from the taglines of subsequent replies. Optionally, your serial number can be included in each tagline. The more interest (read: registered users) I get, the more likely I am to continue with improvements. Print out REGISTER.DOC, fill it out and send it to me along with your payment. You may also charge your registration fee to any VISA or MASTERCARD account. See Register.Doc for details. (NOTE: A copy of the registration form is also attached as the last page of this document). ---------------------------------------------------------------- IMPORTANT: READ THE READ.ME FILE FOR NEW FEATURES AND BUG FIXES ---------------------------------------------------------------- DISCLAIMER OF WARRANTY ====================== THIS SOFTWARE AND MANUAL ARE DISTRIBUTED AND SOLD "AS IS" AND WITHOUT WARRANTIES AS TO PERFORMANCE OF MERCHANTABILITY OR ANY OTHER WARRANTIES WHETHER EXPRESSED OR IMPLIED. BECAUSE OF THE VARIOUS HARDWARE AND SOFTWARE ENVIRONMENTS INTO WHICH THIS PROGRAM MAY BE PUT, NO WARRANTY OF FITNESS FOR A PARTICULAR PURPOSE IS OFFERED. GOOD OPERATING PROCEDURE DICTATES THAT ANY PROGRAM BE THOROUGHLY TESTED WITH NON-CRITICAL DATA BEFORE RELYING ON IT. THE USER MUST ASSUME THE ENTIRE RISK OF USING THE PROGRAM. ANY LIABILITY OF THE SELLER WILL BE LIMITED EXCLUSIVELY TO PRODUCT REPLACEMENT OR REFUND OF PURCHASE PRICE. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 1 Registration Policy =================== Once you have registered MR/2, you will be sent a registration disk that contains the latest MR/2 zipped distribution file, along with an MR/2 ID file. This ID file contains an encrypted and checksummed serial number, as well as your name as it appeared on the registration form. When MR/2 is loaded, it checks for the existence of the file "MR2.ID", and if found, it is checked for validity. If it passes this test, MR/2 recognizes you as a registered user. As a registered user, your taglines will no longer contain the "NR" markings (for "Not Registered"). Instead, the serial number from your MR2.ID file will be displayed. This may be suppressed, if desired, via an INI setting. If you register MR/2 or MR/2 PM, you are considered to be registered for both versions. As I see it, you can only use one of these readers at a time, and I should not penalize those that wish to switch between them. Your MR2.ID file can be shared between both versions. NOTE that your MR2.ID file contains your name and personal serial number, identifying you to MR/2 as a registered user. In no instance should this file be distributed to anyone else or placed in a location where it can be considered publicly available. This file does contain your name and is registered specifically to you. No one but you should have possession of this file. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 2 Upgrades ======== To upgrade MR/2 to the latest version, simply download the new version (or obtain it in some other way) and replace the pertinent older files with the newer ones. Care must be taken so as not to overwrite MR/2 files that have been edited and customized to your liking. This would include, but is not limited to tagline files, templates, the dictionary word base, INI files, and the various REXX .CMD files that are distributed as utilities. PLEASE, make frequent backups of your working MR/2 directory, and make sure you do a fresh backup before installing a newer version of MR/2. The author reserves the right, at anytime he deems it necessary, to ask for an additional "upgrade" fee from registered users. While this is not currently part of any plan, I would like to keep the option open. I would ask, under the same shareware "honor system", that registered users wishing to take advantage of the "upgrade" submit some nominal amount to be considered fully registered for that level. NOTE: In accordance with my previous stated policy, all users who had registered prior to the release of version 2.0 are considered registered for all future versions of MR/2. The above policy change effects only those registering at the v2.0 level or later. Thank you for supporting this program in its infancy! Bug Reports, Suggestions and General Feedback ============================================= If you've been using MR/2 for any amount of time, and/or you've been posting messages in OS/2-related conferences, you might know that I'm easy to find. I welcome all correspondence, whether it be harsh criticism, bug reports, ideas or suggestions of any kind. Various email addresses are listed at the end of this manual, as well as in the read.me file. In addition, I scan as many different OS/2 related conferences as I can find, as well as many OFFLINE (mail reader) conferences. Mention MR/2 in any message and the chances are that one of my virtual conferences will catch it for me. I try not to miss any mention of my products. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 3 Major Features ============== o OS/2 Character mode specific. (A PM version is available.) o Menu and Selection list interface. o Context sensitive help. o Mouse support. o Multithreaded message searching. Soundexing optional. o You can build your own set of "virtual" or "custom" conferences using search criteria. You can specify the logical conference name, the "real" conferences to search, the keyword(s) to look for and which parts of the message to examine. These custom, user-defined conferences are built in a background process, while you read your normal messages. o A "template file" is used to provide boiler plate text and formatting for replies and new messages. You can control the layout of new "unprovoked" messages, replies, private mail replies (Internet, Fidonet and Rime-routed) and more. There's even a template section for forwarded, saved and printed message headers. o A large number of internal, reply-time replaceable variables are available for use in the template file. These variables handle such things as complex attribution and signature lines, as well as being able to handle most of the intricacies of private mail routing. o Integrated address book. Load addresses into the address book from any message or reply. Full address-book maintenance is also supplied. Address book supports target conferences and private routing information. o Use your existing external editor or word processor for replying or use MR/2's built-in editor. You can even edit in another session's window. o Integrated spelling checker available from within the internal editor and/or as a hot-key utility for checking existing replies. You can check the spelling of replies even when using an external editor. Hooks exist to allow access to an external spelling checker, if desired. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 4 o Messages can be "deferred" for later action. This places a copy of the message in your "In Basket". The InBasket is a special conference that is persistent across all packets from the same BBS. Messages are removed only on your command. This is handy for those times when a message is crying out for a reply, but you wish to do so at a later time. o Optional reply logging. This creates a conference for all of your outgoing messages and lets you keep as many as you like, for as long as you like. Replies can be deleted individually, or you can specify a maximum age and/or a maximum count, and MR/2 will remove messages automatically. Any reply can be marked as "permanent", protecting it from the age/count purge. You can repost any reply with ease. You may also, optionally, tell MR/2 to log the original "source" messages that provoked each reply. o Thread support includes sorting messages by subject (the default) with special parsing to remove "RE: " type prefixes of various forms. There is also the "Q" key that displays a pick-list of alphabetized threads in the current conference. This makes scanning for specific subjects very fast and easy. o Message sorting can be configured to use fields other than SUBJECT. The sort order is changeable "on the fly". When changed to sort by FROM or TO user, the "Q" key invokes a summary pick-list of messages by user. o Copy any message to another user, making you the originator. This is great for creating carbon-copy replies, but may also be used to copy message from any conference. Forwarding of any message is available, too, with a definable text header section. o Text-searching is available in pick-list displays. o Run multiple instances of MR/2. o Access to the system clipboard. o Long file name support. o Configurable via the MR2.INI text file for global settings. BBS-specific settings can be specified in a BBSname.INI file. MR/2 is highly configurable. o Bookmark-like features using extended attributes attached to each packet. Bookmarks are handled in such a way as to make them "crash-resistant". ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 5 o Replies can be split at a user-defined line count, or not split at all. You may also use ".pg" commands embedded within the reply to control where messages are split. Multiple part replies can be reassembled for modification, if desired, preserving any ".pg" markers used. o ANSI and PC Board color support for BBS provided screens and messages. o Rot13 encryption is supported both in the internal editor and from within the message viewer. o Message can be entered for a target BBS, even if no packet for that BBS exists (BBS must have been read at least once with MR/2). o Full tagline support with enhanced tagline stealing. If MR/2 doesn't steal the right line, you can choose another. o Multiple archiver support is provide via a REXX .CMD file interface. This REXX script handles most commonly used archivers already, but may be extended to support any set of circumstances you might desire. o Merge multiple packets from the same BBS together to form a single "combination" packet. This is handled through a REXX .CMD file with a direct "mark-and-merge" interface to MR/2's Packet Selection screen. Packets are combined and made available immediately for reading, while MR/2 compresses the combination packet into a final QWK file in the background. o Support for various video display-mode line counts. The normal 25 line display is the default, but 28, 34, 40, 43, 50 and 60 line displays are supported and are easily selectable. o Support for WPS Associations. If you set up a WPS Association between MR/2 and *.Q*, for example, any time a QWK packet is selected in the WPS drives folder, MR/2 will be invoked. o Most of the "normal" features of other QWK reader are included or are on the list of future enhancements. Ideas and suggestions are always welcome. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 6 A Brief Introduction to QWK Packets and Offline Reading ======================================================= The most popular PC format for packaging and reading offline mail today is the QWK format. A QWK packet is basically a collection of files compressed into a single "packet" file, usually with a ".QWK" extension. A QWK packet contains at least a message data file, and a control file. Usually, though, several other support files are included. To obtain a QWK packet, you must logon to a BBS that offers a QWK mail "door". This is simply a BBS external utility (although some BBS systems are supporting this format internally) that has the ability to scan the message bases, collect the mail that you ask it to and assemble any and all support files. It then packs these files into a single, compressed QWK packet file. From there, you use your communications software to download the packet to your PC. Once you've actually read the packet (which we'll get to in a moment), you may have created replies that you wish to post to the BBS's message base. If so, MR/2 will have created a ".REP" packet, which is a compressed file containing these replies. For example, if the original packet was from the FernWood BBS, the reply packet would be called "FernWood.Rep". You would then dial back into the BBS and once again enter the QWK door used to download the source packet. The door's menus should contain an option for "Upload Replies". Select this option and upload the reply file. The QWK door should indicate whether or not the upload was successful, and many actually acknowledge each reply as it is recorded in the BBS's message base. That's an extremely brief overview of the process. To actually use a BBS's QWK door or internal capability, you must usually perform some configuration and setup while online. It is beyond the scope of this manual to instruct you on this procedure. There are too many different types of QWK doors and each does things in a different manner. For more information on the BBS side of things, read the QWK door's online documentation and/or contact the BBS's sysop. If you were successful in configuring the BBS software and downloading a packet, you may now use MR/2 to read its contents. MR/2 will allow you to select the packet from a pick list, then will proceed to uncompress the packet and organize the files for your viewing. You have access to all requested messages, organized by source conference. In addition, bulletins, new file lists and BBS news files, if any, will be available to examine. This is where the fun begins! ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 7 Reading Mail Offline ==================== Why read mail offline? For many, access to their favorite BBS is a long distance or toll call. There may also be limitations placed on a user's BBS connection times. It may not be possible for some people to tie up a phone line for an hour or more while reading message online. Additionally, an offline reader usually offers many features to make offline reading extremely advantageous. MR/2 is no exception. As a brief example, once a mail packet is opened, it may remain opened all day long; for multiple days if you so desire. You may reply to a message and take as long as you'd like. You can open and close a single message and/or reply packet countless times. You can even use your favorite text editing tool to do so, if you have one (MR/2 boasts a powerful yet easy-to-use internal text editor, if needed.) You can save it, move on, then modify it some time later (as long as it hasn't yet been uploaded to the BBS). You can save individual messages to ASCII text files for later reference. You may "defer" messages, keeping them around indefinitely, until you have a chance to reply or otherwise process it. You can search through all or individual conferences for keywords. You can set up keyword searches to be performed automatically by MR/2, creating "virtual" conference, named by you, that will contain any and all messages found. In addition, there are facilities to keep and reference complex "email" addresses. There is much, much more. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 8 System Requirements =================== MR/2 requires OS/2 v1.3 or later in order to load and operate. It will run in a strictly character mode environment, however, due to the addition of PM clipboard code in version 2.0, the PM DLL "PMWIN.DLL" is required. If not found in the LIBPATH specified within your Config.sys file, MR/2 will crash with an error. If PMWIN is copied into a LIBPATH directory, MR/2 will operate. MR/2 successfully loaded and function properly in tests involving a boot floppy, no PM shell, and a single command line. It worked, that is, once access to PMWIN was provided. If PM is not loaded and operational, clipboard access will not function and requests of MR/2 regarding the clipboard will be ignored. If problems arise in the future regarding MR/2 and its need for certain PM DLL's, I may be enticed to create a small "dummy" DLL specifically for the purpose of resolving MR/2's external references but providing no real functionality. Please, let me know if this becomes a problem. MR/2 has a couple of optional "utilities" that require the OS/2 REXX interpreter. OS/2 can be configured to install without REXX, although very little disk space is saved. If the REXX option is not loaded, the UNQWK/MSG2REP multiple archiver support utilities will be unavailable, as will the MQWK Packet Merge utility. Command Line Parameters ======================= There are a couple of command line parameters that may be passed to MR/2. Some users may find these handy. /Wpath This may be used to override the MR2.INI WORKPATH specification and instruct MR/2 to use a different work subdirectory. Replace "path" with the name of the desired subdirectory, which will be created if found not to exist. This is handy, and in fact necessary, in order to have multiple MR/2 sessions running, each accessing a different packet. /Ialt.ini You may use this command line switch to instruct MR/2 to access a default INI file other than MR2.INI. MR/2 can be passed one or more specific packets to read as command line parameters. Packet names should be fully qualified (complete path specifications). You may also set up WPS associations so that MR/2 can be access from the drives folder simply by clicking on a QWK or REP packet. Add "*.q*" and "*.rep" to an ICON that starts MR/2. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 9 Installing MR/2 =============== Unpack the MR/2 ZIP file (MR2_200.zip, for example) into an appropriate directory ("\MR2", for instance). All MR/2 files should be kept together in the same directory. You must invoke MR/2 only while pathed into this directory - this is the only way that MR/2 will be able to find its supporting files. Unpacking the zipped distribution file is all that's involved in installing MR/2. You may choose to create and edit an ".ini" parameter file for MR/2. This file may be used to set up various run-time options. A template file, "MR2INI.ORG" is supplied that provides examples of all available parameters along with some explanations. When using MR/2 for the first time, you will be given the chance to have the default/example INI file copied to MR2.INI. You will then be placed into the system editor and allowed to modify this file. To install support for the internal spelling checker and/or thesaurus, simply unzip the corresponding distribution archives into the same directory as the MR/2 executable file. These optional features are usually distributed as separate .zip files, as they are quite large and not all users will find them beneficial. MR/2 will allow access to these additional features if it finds the file(s) necessary are present. Otherwise, a dialog box is displayed, politely informing you that the necessary files could not be found. Optional Support Files Distributed Separately --------------------------------------------- MR2DICTS.ZIP Spelling checker "small" dictionary (128k) Contains 60,000 words, 248k uncompressed. MR2DICTL.ZIP Spelling checker "large" dictionary (280k) Contains 120,000 words, 480k uncompressed. MR2THSRS.ZIP Thesaurus word base (311k) Contains 9200 keywords, 70,000 synonyms, 356k uncompressed. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 10 MR/2 Setup - the MR2.INI file ============================= When MR/2 is invoked for the very first time (actually, any time where the file "MR2.INI" is not found), it will allow for creation of this file. A short prompt will ask for your permission, and if given, the file "MR2INI.ORG" will be copied to "MR2.INI", and the OS/2 system "E" editor will be loaded, ready for you to make any desired modifications. Once the editor is exited, you will see the MR/2 packet selection screen. It is very important to identify the correct "packet path" in the MR2.INI file. This must identify the directory in which all your .QWK packets are kept. MR/2 does include a provisions for changing the "packet path" on demand, in leu of modifying the MR2.INI file and reloading. From the packet selection screen (or the "no packets found" message box), the packet path may be edited by pressing ALT-P. The initial MR2.INI file contains an explanation of each option. Examine and set these options carefully to fit your specific needs. All INI parameters are listed alphabetically, below, and are described in detail in Appendix A. If you fail or neglect to edit the MR2.INI file, the defaults will look for packets in the MR/2 home directory. MR/2's basic install provides a "Welcome.QWK" packet that provides some basic instructions. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 11 INI File Parameter/Options - Alphabetical Listing ------------------------------------------------- AllUpperCase PacketSort Attributes PositionOnMatchLine AutoFirstKey PostEdit AutoUnpack PreEdit BackDropMaxLines PurgeAfterCount BackupOldReplies PurgeAfterDays BeepOnPersonals QuoteBody Check ReassembleSplits Colors RemoveReplyBookmarks Conference ReplyFile CursorSize ReplyPath DisplayStatus ReplyStripTagline DoorName SaveFile Editor SavePointerFiles ExitAtEndOfParams SeparaterBar F# (F2-F10) SerialInTagline FileSpec ShowBBSID FileViewer ShowEmpties FolderPath ShowReadPercent GoToLastRead SkipReadMessages HeaderEditing SmartQuoting HeaderInQuote SmartWrapping HideConferences SortMasterConference Internet SplitLongReplies KeepMessageMarks String LogReplies SuppressVersionInTag MakeConference Tagline MessageOrder TagMode MouseClickSpeed TagStyle MouseMode TemplateFile MouseScrollSpeed ThreadChangeTone Netmail UnZipper NewMessageEditor V# (V0-V9) OldQuoteDetect VideoMode PacketPath WrapLinesAtColumn PacketRefresh Zipper ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 12 Using MR/2 for the First Time ============================= MR/2's user interface consists mainly of menus, selection lists and confirmation prompts. This, coupled with the context- sensitive help, makes it relatively easy to use, even without a manual. The ESCAPE key will usually move you back to a previous menu or list. It can be used to exit MR/2 when the Packet Selection List is displayed. Pressing ESCAPE may also be used to respond negatively to most of the decision-type prompts that MR/2 displays. Clicking the RIGHT mouse button is recognized by MR/2 to be the same as pressing the ESCAPE key one time. Menus ----- To select from a menu, simply use the up/down arrow keys to highlight the desired option and press enter. Alternatively, you may click on an entry with the mouse. Usually, a "hot key" is defined for each entry. This key is normally the first capitalized character in the selection (e.g., "E" for "Exit" and "M" for "Mail"). Selection Lists --------------- Many MR/2 items are displayed for interaction using "Selection Lists". For instance, the list of available packets, as well as the list of conferences that contain mail, both use Selection Lists. There are several methods for choosing an item from a Selection List. The simplest method involves using the up/down arrow keys to move the highlight bar to the desired entry. ENTER is then used to select the highlighted item. If you choose to use the mouse, simply "double click" on the desired element. If more than one page of items exist, you may move through the list a screen at a time using the PAGE UP and PAGE DOWN keys. The HOME key may be used to move to the very first item in the list, as the END key moves to the last. Pressing PAGE DOWN on the last page of the list will move the highlight bar to the very last element as well. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 13 In addition, you may type one or more normal alphabetic characters to jump to an entry. For example, if you are positioned on the first entry of an alphabetical conference list and press 'M', MR/2 will jump ahead and position the highlight on the first entry in the list that starts with an 'M'. If another letter character is press immediately following this, a jump ahead is performed looking for the combination of the two characters as a prefix. For example, if an 'A' was pressed as the second character, MR/2 would scan ahead for an entry starting with 'MA' and position the highlight on this entry. If no entry is found, the cursor position remains unchanged. Pressing any non-letter key will reset the prefix-match list. In other words, all prefix letters should be typed in succession without pressing any cursor movement keys between them. The mouse may be used to move within a selection list, also. Selections lists display with a "scroll bar" on the right border. You may click on the up and down arrows to scroll the list up or down one line for each click. Holding the left mouse button down while positioned on an arrow will simulate multiple clicks and scroll the list in a faster fashion. In addition, the mouse may be positioned on the white block in the scroll region and "dragged" to a relative position within the list. For example, if the position marker is dragged to the middle of the scroll area, the selection list will be displayed starting at it's midpoint. Clicking within the scroll area in effect drags the position marker to the spot of the click. This is handled differently than standard GUI fashion where a click in these areas is considered a PAGE DOWN or UP. To page up a full screen with the mouse, click on the line immediately above the first displayed entry. To page down, click on the bottom bar of the selection box. Some Selection Lists enable other "special" keystroke options. These additional functions will be discussed in their corresponding sections. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 14 Selecting a QWK Packet ====================== After MR/2 has been configured, the first thing that is usually displayed is the Packet Selection List. Displayed will be the names of all QWK packets found, as defined by the path and wildcard specification in MR2.INI. Also displayed are any reply packets found in the defined reply path. Reply packets, if any, always display at the end of the list, separated from full packets by a divider bar. If no packets are found to list, MR/2 will display a dialog box explaining this and listing the available options. Packets are displayed in date/time-order by default, with the most recent packet being at the top of the list. Other options may be specified in the MR2.INI file. To open a packet for reading, simply choose it by highlighting the name and pressing ENTER. The chosen packet will be "unpacked" and readied for reading. MR/2 is also configured, by default, to update the packet list every 60 seconds. This update will relist the packets and replies. Any new, freshly downloaded packets will appear, as will any other changes made to the packets/replies available in any other session. Deleting a Packet ----------------- You may delete any packet displayed on the Packet Selection list by positioning the highlight bar on it and pressing ALT-D. A confirmation box will be displayed, and if acknowledged, the file will be deleted and the display updated. Renaming a Packet ----------------- You may rename any packet displayed on the Packet Selection list by positioning the highlight bar on it and pressing ALT-R. A form will be displayed prompting for a "new" name. Fill in the desired new name and press ENTER to rename the file and update the display. You may instead press ESCAPE to cancel the rename. You may delete any packet displayed on the Packet Selection list by positioning the highlight bar on it and pressing CTRL-D. A confirmation box will be displayed, and if acknowledged, the file will be deleted and the display updated. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 15 Relisting the Packets Available ------------------------------- Pressing ALT-N will cause MR/2 to rebuild the list of available packets. The screen display will then be updated to reflect the new list. This is particularly handy when packets are being downloaded in another session and may not show up on an older list. Changing your current Packet Path --------------------------------- The packets normally listed are those found to exist in the packet path specification within MR2.INI. You may change the packet path and wildcard specifiers used to find files "on-the- fly". Simply press ALT-P and modify the displayed specification, then press ENTER to obtain the updated packet list. Merging Multiple Packets ------------------------ MR/2 has the ability to merge one or more QWK packets into a single packet for easier scanning and reading. Often, a BBS will limit the amount of message that will be sent in a single QWK packet, and it is necessary to download 2 or more packets to get all the messages available. Reading them individually is always an option, but there are advantages to reading them as a single unit. To implement this feature, MR/2 uses a REXX script called MQWK.CMD. While this file seems to handle most of the common packet merging problems, it may be necessary to edit it and change some system-specific commands. If merging packets fails, simply edit this file and read the notes located at the very beginning. The instructions placed there will explain some more- common problems, and how to solve them. To merge two or more packets, you must start at the MR/2 opening screen, the Packet Selection list. You select the packets to merge by moving the highlight bar to each packet and pressing F11 (or the "*" key for those keyboards without extended function keys). The packet name will be prefixed with a double-arrow-like symbol. Once all packets that you wish to merge have been marked, press ALT-M. NOTE that all packets *must* have originated from the same BBS, and that there is no error checking for this. Trying to merge QWK packets from different BBS's will produce unpredictable results and is not supported. After you press ALT-M, you will be asked to supply a file name for the combination QWK packet. A default will be displayed, and you may accept this by simply pressing ENTER. If this is unacceptable, make the desired changes then press ENTER. MR/2 ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 16 will warn you if a file by that name already exists, and will let you continue or supply a different name. You may also leave the name totally blank, in which case MR/2 will simply merge the packets into the "working" directory for reading, but will not create a combination QWK packet. This is not recommended, as bookmarks will not be able to be recorded for this temporary packet. It remains, however, an option. Once a new packet name has been supplied, MR/2 calls upon the MQWK.CMD REXX script. The first packet will be unzipped into the working directory. Each subsequent packet will be unpacked and merged with the existing files. MQWK.CMD will merge the message bases and the "Control.dat" files, and will save the newest of any file lists, news files, bulletins and any other supporting files. All .NDX files are discarded, as MR/2 has the ability to create its own, and will do so before the packet is given to the user to read. If all goes well, MR/2 will again receive control of the session, build the NDX files for the new combination packet, and allow you to start reading. At the same time, in the background (and if you supplied a combined-packet name), will invoke your archiver to pack the merged files into the file names specified. If all does not go well, please read the directions in the front of MQWK.CMD with a text editor. Common problems will be described, along with any existing solutions or suggestions. If all else fails, contact the author with information on the problem. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 17 Modifying the MR2.INI file -------------------------- While on the Packet Selection screen, the ability to edit the MR2.INI configuration file using the defined text editor is provided through the ALT-C key combination. This will call your editor (or the default of the "E" editor, if not specified) and load the MR2.INI file. Once you exit the editor, MR/2 reloads the .ini file, and changes take effect immediately. NOTE: MR/2 will not automatically load a "local" or BBS-specific INI file for modification. You may, however user your editor's open/save logic (if any) to modify an files desired. Entering Message for a BBS without a Packet ------------------------------------------- While on the Packet Selection List, you may press ALT-E to enter messages for any BBS ever accessed through MR/2. This allows messages to be entered for a BBS when all previously read packets have been deleted. When you open any packet with MR/2, the BBS control data is copied into the MR/2 home directory. The name of the file will be built from the BBS name "ID", suffixed with ".cfg". For instance, If the BBS ID is NerdNook, then the file will be called "NerdNook.cfg". A list of BBS ".cfg" files is displayed by pressing ALT-E, while the normal Packet Selection List is removed from view. You may use the ESCAPE key to return to the list of packets, or you may choose one of the BBS name for new message entry. Once a BBS name is picked, MR/2 checks for existing replies. If any are found for the specified BBS, you are asked if you wish to keep these, or discard them. Respond appropriately. The Packet Main Menu is now displayed with some of the options disabled. You will only be allowed to enter new messages, as well as review any previous messages (contained in the Replies conference). If you have active messages in your InBasket conference for the target BBS, these will also be available. In addition, your ReplyLog will be available if reply logging has been activated. See "Creating New Messages", below, for more instructions on creating unprovoked messages. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 18 NOTE: Some BBS's and/or QWK door combinations will place an abbreviated "control.dat" file in each QWK packet. This causes problems for MR/2 whenever a new message is written, as only those conferences defined in the Control.Dat file are accessible. If one of these abbreviated files is saved as a BBS.CFG file (used for no-packet entry), then MR/2 has no way of knowing about conferences not included. If you find this to be a problem, check your QWK doors configuration for a switch to force a full conference list with each packet. Alternately, ask your sysop about configuration options. You may, however, enter the number of the conference you wish to post into without it being described in the control file. This, of course, assumes that you know the conference number MR/2 will accept any number as the target conference. A warning will be issued that the conference is "unknown", but the number will be accepted if you wish to continue. Toggling the Video Display Mode ------------------------------- You may toggle the number of text lines displayed on the packet selection screen by pressing ALT-V. This will jump to the next higher count of display lines. For example, MR/2 is configured by default to start in 25 line mode. By pressing ALT-V, the screen is repainted in 28 line mode. Modes that follow are dependent on your video card and the way OS/2 is configured with it. The "normal" display-line modes available are 25, 28, 34, 40, 43, 50 and 60. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 19 The "Unpacking" Process ======================= If you choose a packet for reading, it is unarchived using the unpacking utility defined in MR2.INI. If this command fails, an informational box will be displayed showing the complete command for debugging and correction. After the packet is unpacked, a check is made for existing replies. If replies for the packet's source BBS are found, you are asked if you wish to keep or discard them. If these replies have been previously uploaded to the BBS, you may discard them, otherwise, you will probably want to keep them. If you have not disabled the "bookmark" feature (it's enabled by default), then another prompt may appear. If you have previously read part of the current packet, you will be asked if you wish to return to your previous reading position. Responding YES will place you at the last message MR/2 remembered you reading. Responding NO will place you at the Packet Main Menu. MR/2 can be configured to respond "YES" to either or both of the above prompts automatically, if desired. This can result in faster packet-open times, if you normally respond "YES" anyway. See the INI parameters "AutoUnpackReplies" and "GoToLastRead". ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 20 Packet Main Menu ================ Once a packet is ready for reading, the Main Menu is displayed. The following options are listed: Mail Write new Files News Bulletins Pack Replies Exit MR/2 will examine the contents of the current packet and enable/disable any of these options that are not applicable. For instance, if the packet contains no "new files" listing, then the "Files" option will display de-emphasized and can not be chosen. Mail ---- Select this option to read the messages contained in the current packet. Once selected, a list of conferences with mail will be displayed. If any messages addressed specifically to you are found, a "Personal" conference will be placed at the top of the list for easy access. Next to each conference, in parenthesis, will be the number of messages found in that conference. In addition to the "Personal" conference, two other special conference might appear. The "Inbasket" conference contains all active messages that have been "deferred" for the current BBS. These messages may have originated from countless older packets, as a deferred messages is kept in the inbasket until it is manually removed by the user. The "ReplyLog" conference is another special conference that, if MR/2 is configured to log replies, might appear. This conference will contain a log of your recent replies, in QWK format, for your review and reference. The maximum count and age of kept replies is configurable via two MR2.INI parameters. See PurgeAfterDays and PurgeAfterCount in the section that describes INI parameters. MR/2 can also build special "virtual" conferences, if you instruct it to do so. Virtual conferences are user-named and are filled with messages that match certain search criteria; usually keywords of interest. You may define multiple keywords that are used in "or" mode. You can also limit the search to specific conference numbers, and tell MR/2 to check all or only certain areas of the message (Subject only, for instance). If you specify no keywords but provide a list of conferences, MR/2 will combine all messages from these conferences into a single virtual ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 21 conference. This makes it easier to scroll though common areas that might otherwise have only contained a few messages in each. This feature is often used with the INI parameter "HideConferences" so that the individual, original conferences are not listed separately. If virtual conferences have been defined, MR/2 will build these conferences in the background. You may read messages normally while this takes place. A low beep tone will be made when all virtual conferences have been built. If you happen to have the Conferences w/Mail screen displayed when this happens, MR/2 will automatically update the selection list with all new conferences. If more than one screen of conferences exist, you may use the PAGE UP/DOWN keys, or the arrow keys to move through them. HOME and END are also functional here. Searching All Conferences ------------------------- While on the Conference Selection screen, you have the option of searching all conference with mail for one or more text strings. Pressing ALT-F will bring up the Search Criteria entry form. Fill in the text string you wish to find and press ENTER. Matching entries will be queued up and displayed as requested. See the section on searching below for a more detailed description. Adding/Dropping --------------- You may also have MR/2 send certain configuration messages to your BBS's mail door. These message include requests to ADD a new conference to your active reading list, or to remove or DROP a conference you are currently downloading. This function may be accessed from the Conferences w/Mail screen, or from the Conference selection list available when editing a reply or new messages header (ALT-C). Since the latter is the more complete list, most ADD actions will be requested from that list. Move the cursor so that the target conference is highlighted. Press ALT-A to ADD the conference to future packets; ALT-D to DROP the conference from your "reading" list. MR/2 finds and parses the DOOR.ID file, if the packet contains one. This is usually necessary for the proper door messages to be generated. If not found, MR/2 assumes you are using the QMAIL door and generates QMAIL-type configuration messages. You may also specify a different default door name using the DoorName INI parameter. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 22 Reading Messages ---------------- After Choosing the conference you wish to read, the first message in that conference will be displayed. At this point, a variety of options present themselves. Remember, pressing F1 at anytime while in MR/2 will display a help screen listing the available keystrokes. Pressing F1 while on a message display results in the following information being displayed: ----------------------------------------------------------------- MESSAGE READING HELP + (ENTER) Move forward one message P - Print to "prn" device G/- Move backward one message O - Shell a command line S Print the message to a file Z - Skip to next "unread" F Find text within the conference Q - Thread Selection menu T Steal the message's tagline D - Defer to INBASKET I List messages w/header information W - ForeWard a message K/U Kill/UnKill (reps & folders ONLY) C - Copy a message/reply R Reply to message/modify a reply A - ANSI Viewer N/L Find NEXT/PREVIOUS find match * - Put message in editor X Exit MR/2 fast (after Confirm) E - Enter a NEW message H/B Move forward/backward w/in thread J - View ReplyLog orig. ! - Make permanent F2 -> F10 User definable TAB/BACKSPACE NEXT/PREVIOUS thread ALT-A Save address PAGE UP/DOWN Forward/back 1 screen CTRL-F2 Spell check reply UP/DOWN ARROW Scroll up/down 1 line ALT-E unEncrypt (ROT13) RIGHT/LEFT Scroll right/left ~ Rewrap message HOME/END Jump start/End ALT-N Next find-match spacebar Next Page/Next message w/in current msg ESCAPE Exit message ALT-TAB Toggle tabs [4802] ----------------------------------------------------------------- Some of these options are self-explanatory and will not be discussed further. Message Sort Order ------------------ Message sort order is initially set within MR2.INI, or in a local BBS.INI file. This sort order controls the order in which messages are displayed as you read them sequentially. It also effects the displayed order of the message index, and what happens when the Quick Summary screen is requested. By default, sort order is set to "thread", so that all messages are sorted alphabetically by subject. The sort order for any conference can be changed "on the fly", if desired. See the section "Selection Messages by Header Information", below. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 23 Using the Spacebar ------------------ The spacebar will move forward through message one screen at a time. For instance, if a message is three "screens" long, pressing the spacebar will show you screen two, pressing it again screen three. When it's pressed the next time, the next message in sequence will be displayed. Mousing Around -------------- Some mouse support is provided when on the message viewing screen. Clicking in various areas or on certain words will perform functions equivalent to the more common keyboard commands. For example: o Click on the bottom "status" line works the same as hitting ENTER. o Click on the next line up (last display line) and you've simulated "spacebar". o Any other line on the bottom half of the message area is a page-down. o Click on any line in the top half of the message is the same as a "page up". o Click on the "==" header dividing line and you've requested the previous message ("G" or "-"). o Click on "Subject:" pages forward by thread, "Conf:" brings up the index and on "Hit" (or where it should be displayed) for the next search. o Click on the [M] at the end of the divider line to access the "mouse menu", a pick-list of message reading functions. o Click on the arrow boxes at the end of the divider line to scroll up/down as desired. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 24 Selecting Messages by Header Information ---------------------------------------- Pressing "I" or the INSERT key will bring up the Message Header Selection List. Messages will be listed, one per display line, providing the message number, from-name, to-name, subject and date/time. If a message has been previously read, an asterisk "*" will proceed its entry. If a message has been saved, replied to or killed (replies only), status marks will be placed at the end of the entry ("S", "R", "K", respectively). To select a message, simply move the highlight bar to the desired entry and press ENTER. The mouse may also be used, as well as all other standard selection list keystrokes. When the Message Header List is displayed, the highlight bar will be positioned on the currently displayed message. The sort order for any conference can be changed "on the fly", if desired. From the Message Index screen ('I" while viewing any message), simply press ALT-O. A selection menu will be displayed. Pick a desired sort order from the following possibilities: Number Subject From To Date/Time ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 25 Replying -------- When you find a message that you wish to reply to, simply press "R". MR/2 will "quote" the message (i.e., copy the original message with the author's initials) to a reply file and invoke the editor defined in your MR2.INI file, if one is defined. The quoted message is usually modified by trimming off excess lines and making it look more presentable. Add your reply text to the end of the quoted section. Once the reply is complete, save it and exit the editor. MR/2 will retrieve the modified file and record it as a reply. You will be asked to review and accept the "reply header" information, either before or after editing the reply, or sometimes in both instances. This is "configurable" via an option in the MR2.INI file. Usually, the header will be acceptable unchanged. You do have the option, though, to do such things as change the addressee name, conference, tagline and security status. Also, if you wish to reply and address the message to the original message's addressee, the F3 "Toggle To" function is available. The F2 key works as a pick-list selection key from the TO, CONFERENCE and TAGLINE fields. When pressed while the cursor is within the TO field, the address book selection list will be displayed. When pressed from within the CONFERENCE field, a pick-list of all available conferences will be displayed. Also, you may pick a different tagline from a list of those available by pressing F2 while in this field. Specific Pick-lists can be displayed regardless of the current field via special hot-keys. ALT-C will display the conference list, ALT-A the address book list and ALT-T the tagline list. NOTE that MR/2 allows you to enter conference numbers that do not exist. This is to accomodate situations where a conference number is known to exist, but the BBS's control.dat file does not contain an entry for it. This occurs with some mail doors that allow abbreviated control.dat files, and with PC-Board's command line QWK option. While entry of unknown conference numbers is allowed, you will be warned of the possibility of an error. By default, long replies are split into messages of about 100 lines in length. This length is entirely configurable using the SplitLongReplies INI parameter. Set this value to NO to suppress splitting altogether. When a long reply is split, its subject field is modified to contain the literal sequence (e.g., "... (1/3)"). MR/2 will also allow reassembly of split replies by default. This allows you to modify a split reply as a complete, unsplit entity. NOTE that a user may force a "split" at a particular line by simply placing the ".pg" split-here command at the desired location (on a line of its own). When a reply split using ".pg" is reassembled, any original manual breaks will be remembered and preserved. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 26 Using an Editor in a Separate Window/Session -------------------------------------------- While loading an editor "on demand" is usually quick and easy in character mode, using a PM based editor can be cumbersome. For this reason, MR/2 provides an option for editing replies in a separate session. First, the MR2.INI file should contain a line specifying "NONE" for the editor: Editor=NONE You may also wish to declare the name of the "ReplyFile" to be simple and easy to locate (e.g., "C:\Reply"). When you request to reply to a message, MR/2 will quote the message to the named reply file. With the editor option set to "NONE", MR/2 then merely posts an informative "Waiting - press any key" message and waits for a key press. This allows you to switch to another session, load the reply file, modify it, save it and return to MR/2. Once a key is pressed, MR/2 retrieves and records the reply in the normal way. NOTE: You must be sure to save the reply and release the file before switching back to MR/2, as MR/2 provides very little error checking in this mode. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 27 Killing the Current Reply ------------------------- Once a reply exists, the Conference Selection list will include an entry for reviewing replies. You may read these in the same manor as you read regular incoming mail. If you find a reply that you wish to remove, you may "kill" it by pressing the "K" key. After confirming this action, MR/2 will mark the message as "killed". It will still be viewable, but will not be packed in the reply file. NOTE: As long as you don't leave the current session and packet, any killed reply can be "unkilled" easily. Simply move to the message to be reactivated and press "U" to "unkill" it. Alternatively, you can display the message and press "R" to modify the reply. Save the message as-is and the killed status will be removed. Once you exit the current packet and replies are packed, any killed messages are gone forever. Modifying a Reply ----------------- Once at least one reply exists, the Conference Selection list will include an entry for reviewing replies. You may read these in the same manor as you read regular incoming mail. If you find a reply that you wish to modify, you may do so by pressing the "R" key. The message will be displayed for modification using the default editor. Make the desired changes and save the message and MR/2 will place the updated message into the reply file. Searching --------- You may search a conference for one or more text strings. Messages found contain the string(s) will be displayed, one at a time. Searching is multithreaded, meaning that while your viewing the first (or subsequent) matching message, MR/2 will continue to search through the rest of the messages for more. To search the current conference, simply press "F" while on any message from that conference. This will invoke the Search Criteria Entry form. Fill in a text string to search for and press ENTER. You will have to wait until MR/2 finds the first match, which will then be displayed for your viewing. When a "hit" is displayed, MR/2 will attempt to display the message so that the message line containing the matching text is the second display line. If the match was caused by the From, To or Subject fields, then the message is displayed at its starting point. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 28 While performing the search, MR/2 constantly updates the bottom line of the screen with information on its progress. Additionally, while viewing search result, "Hit x of xx" is updated in the upper right corner of the display. Multiple Search Strings ----------------------- You may search for more than one text strings in a single pass by separating the different strings with backslashes "\". MR/2 will check each message for each separate string, and will call the message a "match" if any one of them is found. Soundex Searching ----------------- MR/2 also supports "soundex" searching, or searching for sound- alike words. To request a soundex search, simply prefix the search text with an ampersand "&". For instance, "&Windoze" will match Windows, windoze, etc.,. The soundexing algorithm is very loose, requiring the use of larger words in order to avoid a hit on every message. Examining Search Results ------------------------ You may move freely through any resulting message hits by pressing "N" for the "Next" message, or "L" for the "Last" or previous message. Alternatively, you may use the mouse to move forward by clicking on the "Hit x of xx" status area. When a search record is displayed, all words matching the search criteria will be displayed in a different color (user- controllable via the INI parameter "Colors"). Usually, the message will be displayed so that the first match within the message will be found on the second display line. In addition to using "N" to move to the next message with a search-hit, you may press ALT-N to search forward within the current message for the "next", undisplayed match. Requesting a new search will destroy the results of the previous search. Escaping to the Conference Selection List will also discard the results. If you request a "next" or "previous" record, and you are at the beginning or end of the list of hits, MR/2 will post an information box and wait for a key. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 29 Searching All Conferences ------------------------- As mentioned previously, you can search for text in all conferences by pressing ALT-F on the Conference Selection List. The search process will be performed in a manner similar to a single conference search. When reviewing messages found in this way, many of the keystrokes normally available are disabled or their behavior is modified. For example, since there is no sequential "next" record, pressing ENTER will give you the "next" message hit. Saving to a Text File --------------------- If you wish to save any message to a text-based save file, press "S" while viewing the message. This will invoke the Save File Name form with the default name of the last file name used. You may used this file name simply by pressing ENTER. You may make any manual changes to the name desired and then press ENTER. If you wish to select from a list of existing save files, pressing F2 will provide a list from which to choose. The list if built from scanning the disk for wildcard matches built using the currently displayed name. You may place wildcards in the displayed specification to control the displayed list. Saving first appends the message header to the names file, then the text of the message. The exact format of the saved message header can be defined by the user. The template section "SaveHeader" is used by MR/2, if it exists. The example template file contains a default definition for this section. Reading by Subject/Thread ------------------------- You may move forward or backwards through messages based on subject by pressing "H" for forward movement or "B" for backwards movement. You may also click the mouse on the Subject area of the message to move forward by thread. Fast Exit from MR/2 ------------------- You may exit MR/2 quickly any time you are reading a message by pressing "X". This will bypass the display of all menus and selection lists normally performed when you use ESCAPE to "back out" of the program. It will also suppress the packing of replies and the cleanup of the work directory. This will allow you to reenter MR/2 at a later time, and pick up exactly where you left off. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 30 Spawning an OS/2 command line ----------------------------- While somewhat redundant, access to the OS/2 command line is provided by pressing "O" while viewing a message. You MUST remember to use the "exit" command to return to MR/2. Printing -------- You may format any message to the default "prn" device by pressing the "P" key. No prompting for confirmation is performed, and error checking is non-existent. Printing first output the message header, the text of the message followed by a formfeed. The exact format of the printed message header can be defined by the user. The template section "PrintHeader" is used by MR/2, if it exists. The example template file contains a default definition for this section. Stealing Taglines ----------------- MR/2 has the ability to "steal" a tagline from the current message and add it to the tagline file specified in MR2.INI. While viewing a message with a tagline you want to swipe, press "T". MR/2 will attempt to determine which of the lines is most likely a tagline, an extract this line. The chosen line is displayed for confirmation, and you may make any desired changes to it at this time. If the line automatically selected is not the tagline you want, you can use the up and down arrow keys to scroll through the current message's lines. Once the line is displayed, you may modify it as desired, then press ENTER to save it. Entering a New Message ---------------------- The 'E' key is available at any time from within the message viewer to enter NEW messages without having to return to the Packet menu (i.e., it is the equivalent of entering the "Write new" function on that menu). The current conference will be the default for the new message, but To and Subject remain blank. No quoted text will be present in the reply when editing, it will be a "fresh", empty file (generated from the `NewMessage` section of the template file.) ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 31 Quick Thread Summary Screen --------------------------- Pressing "Q" while viewing messages will invoke the Quick Thread Summary screen. This list all threads in the conference, in alphabetical order, along with the count of previously read messages vs. total message in the thread. All threads that have been read completely are marked with a checkmark. This is a full feature "selection" screen, so you can page around, pick and peck at only the subjects that interest you. NOTE: When message sort-order is set to FROM or TO user, this selection screen is converted into a Quick "User" Selection screen. It will summarize all user names with message counts for each. Displaying Embedded ANSI Escape Sequences ----------------------------------------- Basic "ANSI" color and animation escape sequences code can be played in the message viewer on demand. Press "A" while viewing any message with ANSI escape sequences. If the scrolling of the screen does not seem to work as it should, results can usually be improved by switching into a higher line/screen mode (ALT-V). 28 and 34 line modes seem to give the best results for viewing ANSI art. Copying a Message (Carbon or Silicon Copies) -------------------------------------------- The Carbon Copy feature is available from the message reading screen and is invoked by pressing the C key. This "Copy" function simply places a copy of the current message in the reply conference, changes the FROM user to your name and places the EDIT HEADER screen up. You can copy any message to someone else and make it "from you"; not just your own replies. Copy loops for multiple copies until your ESCAPE from the "next" message header edit. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 32 Forwarding a Message -------------------- You can forward the message you are reading to another user and/or conference. Simply press "W" and the Message Header Edit screen will appear. Fill out the To field and change anything else as needed. Accepting this form will create a forwarded copy of this message in the reply conference. The original message will be copied into the replies directory with a short "forwarded by ..." prefix section, usually 3 or 4 lines long. The default MR/2 prefix is three text lines and a dashed divider line. If a `Forward` template section has been defined in the MR/2 template file, it is used as the template "prefix" for forwarded messages. NOTE: MR/2's tagline does not appear in these messages UNLESS you modify it later. Making revisions to a forwarded message will cause MR/2 to place/replace its tagline on the message. Deferring a Message ------------------- You can now "Defer" any message to a QWK save area independent of the current packet for later processing. This will create an "InBasket" conference which will contain all messages for the current BBS that have been deferred and never manually deleted. This allows you to reply to a message later, when time permits, without having to keep the entire packet around, trying to remember why, and which message it was. Press "D" or "/" while viewing the message you want to defer. Zipping (Skipping) to Next Unread Message ----------------------------------------- The "Z" key, used when viewing a message, now allows you to "Zip" to the next "unread" message in a conference. Copying to the System Clipboard ------------------------------- While viewing any message, it is possible to copy or append parts of the message to the system clipboard. This allows for passages, or the entire message, to be imported into other applications. Since you can append to the existing clipboard data, it allows you to build a collection of passages from multiple messages. These might be inserted into a message or reply as a unit. To perform clipboard writes, press "*". This places the message inside the internal editor in "no save" mode. You may perform most editing function, but keep in mind that the changes will not be saved. This function is provided only to access a message's text for export to the clipboard or a text file (ALT-W). ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 33 Jumping to a Logged Reply's Source Message ------------------------------------------ While viewing the reply log, and when logging is set to "Full", a special key is available in order to view a reply's "source" messages. The source or "original" message is the message that provoked the reply. Press the "J" key to "Jump" to the source message. If one exists (not all messages have a source, new messages, for example), it will be displayed. Recording a Message's Address in the Address Book ------------------------------------------------- While viewing a message, you may wish to save the originator's electronic address in MR/2's address book. This is most handy for private, routed mail, but also can be useful for public addresses. To save the address, simply press ALT-A. MR/2 will collect all the information it can from the message and display it in the address-book maintenance screen for manual correction. Make any changes you deem necessary and press F10 to save the address. There is an entire section dedicated to address book maintenance in the advanced features area, below. Rewrapping a Message for Display -------------------------------- While viewing any message, you can press "~" to rewrap it. This is useful only in USENET (Internet) conferences where sometimes a message gets posted without linefeeds. MR/2 would display it on a single line, but only give you access to the first 160 characters. This rewrapping is quite temporary (if you "go back" later to view the same message, you'll have to rewrap it again), and totally manual; performed by user keypress only. Unkilling the Current Reply or Message -------------------------------------- If you somehow kill a reply or a message (InBasket and ReplyLog messages are the only types of non-reply messages that can be "killed"), you can remove the killed marking by pressing the "U" key. The screen will update and the status markings (upper right hand corner of the screen) will indicate that the message is no longer "killed". ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 34 Marking a Reply Log Message as Permanent ---------------------------------------- The "!" key may be used to mark a message contained in the Reply Log conference as permanent. Making it permanent protects it against the automatic purge process, where logged messages are killed after a certain number of days or when a certain count is reached. This key is functional only inside the ReplyLog conference, of course. A permanent message may still be manually killed, which will then cause the message to be removed when the ReplyLog is packed (when the current packet is closed). Simple Encryption/Decryption - Rot13 ------------------------------------ Some users like to use simple Rot13 encryption to hide text from plain view. This is hardly a way to keep a secret, as Rot13 encryption is simple to decipher. Its use is intended more for situations like, for example, the writer is revealing the surprise ending to a movie and he doesn't want to ruin the surprise for someone who has not seen it yet. In this case, he would post a normal text message telling readers to Rot13 the text that follows only if you wish to know how the movie ends. While in the message viewer, ALT-E will rot13 the whole message. Read the desired part and ALT-E to return the message to normal viewing. Replying to a message displayed in rot13'd form is OK, the message buffer is only temporarily converted and almost any action switches it back. The internal editor also supports Rot13 encryption. Simply mark a block of text and press ALT-E. The block will be encrypted (or unencrypted, if previously Rot13'd). Changing the Default Tab Expansion Size --------------------------------------- Tab expansion in the message viewer. I default this to 4 characters, but allow you to toggle this value via ALT-TAB. Sequence is 4,8,0,2 where "0" means show the tab character and don't expand. Checking the Spelling of an Existing Reply ------------------------------------------ You have the ability to spell check an existing reply at any time, even if you use an external editor. Ctrl-F2 while the reply is visible. This basically puts you into the MR/2 internal editor and auto-invokes the speller. You have no opportunity to edit the message header, but you can exit the speller and do normal text editing if you wish. You must use F10 to save the changes to the reply. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 35 Using the Thesaurus with an Existing Reply ------------------------------------------ You may access the thesaurus (if installed) for use with an existing reply at any time. This is performed in the same manner as checking the spelling of an existing reply (see above). You must first request that the reply be accessed for spell checking by pressing CTRL-F2. Once the spelling checker's menu is displayed, simply press ESCAPE, and you will be inside MR/2's internal editor. Move to the work you wish to see synonyms for, and press ALT-F1 (or ALT-T). You may invoke the thesaurus as many times as desired, and other changes may be made, too. Remember, though, that to save any changes made to the existing reply, you must press F10 (save and exit). You will be reminded of this if you try to exit without saving any changes; MR/2 will ask you if you are sure you want to proceed, and you will have an option to save. ----------------------------------------------------------------- ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 36 MR/2 User's Manual - Table of Contents Page 36 Write New - Creating New Message -------------------------------- Replying to existing message is fun, but if you want to start a new "conversation", what do you do? When you wish to create a new, "unprovoked" message, Select this option, "Write new", from the Packet Main Menu. NOTE: This same functionality is available even while reading existing messages. To write a "new" message while in the message viewer, simple press 'E'. The Conference Selection List will be displayed, but it will be different from the display of conferences with mail. All conferences supported by the source BBS will be listed, and no count of messages is given. Choose the conference where the new message is to be posted. You will then be walked through a procedure identical to "replying" to a message. The Message Header form will default to a target user of ALL, you may change this as desired. Also, since you are not replying to an existing message, no quoting is performed, and an empty reply file is provided. Enter your new message and save it. MR/2 will add it into the reply file for uploading to the BBS. You may review and edit any "new" messages by accessing the replies conference. To MR/2 and all other QWK readers, new messages are just replies with no reference message. New File Listings ----------------- If a "new files" listing was provided in the QWK packet, this option will be displayed using "bright" letters and may be selected. If chosen, the new files listing will be displayed for your viewing. You may use the Page Up and Down keys to move about the file, as well as the arrow keys, spacebar, HOME and END keys. As an added option, you may press "E" to view the file listing using your specified editor. You may also press "S" to save/append the new files listing to another file of your choosing. The file list may be printed to the primary LPT port by pressing "P". NOTE: Requesting to "edit" the file with your Editor set to NONE won't really do much. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 37 Bulletins --------- If the current packet contains any bulletins, this option will be displayed using "bright" letters and may be selected. If chosen, a list of all bulletins found will be displayed. If you pick any bulletin from the list it will be displayed for your viewing. You may use the Page Up and Down keys to move about the file, as well as the arrow keys, spacebar, HOME and END keys. As an added option, you may press "E" to view the bulletin listing using your specified editor. You may also press "S" to save/append the displayed bulletin to another file of your choosing. The bulletin may be printed to the primary LPT port by pressing "P". NOTE: Requesting to "edit" the file with your Editor set to NONE won't really do much. While viewing a bulletin, pressing ESCAPE will take you back to the Bulletin Selection List. Pressing ESCAPE at this point will return you to the Packet Main Menu. The NEWS File ------------- If a "news file" was provided in the QWK packet, this option will be displayed using "bright" letters and may be selected. If chosen, the news file will be displayed for your viewing. You may use the Page Up and Down keys to move about the file, as well as the arrow keys, spacebar, HOME and END keys. As an added option, you may press "E" to view the file listing using your specified editor. You may also press "S" to save/append the news file to another file of your choosing. The news file may be printed to the primary LPT port by pressing "P". NOTE: Requesting to "edit" the file with your Editor set to NONE won't really do much. Packing Replies On Demand ------------------------- This option may be used to expedite important replies back into a BBS's message base. While it is a handy option to have available, it must be used with care. Often, a reply is critical or important, and while you may have other messages to read and/or replies to write, you want to get the existing replies back to the BBS and into its message base right away. This option is specifically for that purpose. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 38 When you select this option from the menu, you are first shown a detailed dialog explaining exactly what you are about to do and the problems that may result if you don't do it properly. This screen reads: NOTE that you are about to pack all current replies and removed them from this session. MR/2 assumes that you will now immediately upload the resulting REP packet to the BBS The REP packet should be uploaded and deleted as soon as possible. If you create more replies w/o first uploading these, the old replies (REP file) may BE LOST. If you are logging replies, these replies will be recorded in the Reply Log now. Adding to this REP file later may cause duplicate entries in the log. Press ESC to Abort, any other key to continue. If you continue past this screen (you don't press ESCAPE to abort), you are asked again, using a simpler prompt, if you wish to continue. If you do, then your archiver is invoked, a .REP file is created, the "Replies" conference is removed from the Conference selection list, and all replies are appended to the reply log, if this option is activated. Exiting the Current QWK Packet ------------------------------ You can exit MR/2 by pressing ESCAPE at the Packet Selection List, or by using the "Fast Exit" option while viewing a message. Fast Exit does not perform cleanup nor does it actually pack your replies. Its purpose is to provide a quick way to exit MR/2 where the intention is to return shortly and work with the same packet. Exiting by escaping from the Packet Selection screen is the more "normal" way of leaving MR/2; all packets are closed and all reply message saved using this method. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 39 The Internal Editor =================== MR/2 includes an built-in text editor for use by those who don't have a favorite external editor, or those who wish to benefit from the speed and features it provides. By default, the MR2.INI file contains the line "Editor=INTERNAL", which tells MR/2 to use its own editor for creating replies and new messages. Press F1 while using the editor to display this help screen: ----------------------------------------------------------------- Internal Editor Help F1 - Help ALT-A - Drop Anchor (mark) F2 - Search (^S) ALT-U - Unmark (mark off) F3 - Search and Replace ALT-T - Thesaurus* (ALT-F1) F4 - Search again (^F) ALT-V - Toggle  display F5 - Mark/Bound (^K) ALT-R/W - Read/Write file. F6 - Move block (^R @M) F7 - Copy block (^Y @C) CTRL-F2 - Spelling checker* F8 - Delete block (^U @D) CTRL-F9 - Reformat paragraph F9 - Center line CTRL-END (^Z) - erase to EOL F10 - Save and Exit CTRL-RIGHT/LEFT - move by word F11 - Mark begin (^A) CTRL-B - Start of file F12 - Mark end (^K) CTRL-E - End of file CTRL-X - Delete current line HOME/END PAGE UP/DOWN ESCAPE - exit w/o save (confirmed) * optional (if installed) ----------------------------------------------------------------- To move around within the editor, simply use the cursor keys, inserting characters simply by typing them. Many of the functions listed above are self-explanatory and will not be given any more detail. Descriptions of the more complex functions will follow. NOTE: the editors normal cursor size is configurable via the CursorSize INI parameter. Users running MR/2 windowed session in line modes greater than 25 may find it necessary to increase the size to in order to see the cursor. Search ------ Pressing F2 or CTRL-S will bring up the search-for-text entry prompt at the top status bar. Fill in the text you wish to search for and press ENTER. If the specified string is found, the editor will move the viewing position so the text is visible, and the cursor will be placed on the match. The search will begin from the current cursor position forward. To search the entire file you must move to the beginning before searching (press HOME three times). To search for the NEXT occurrence of a previously matched text string, simply press F4, "Search again". ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 40 Search and Replace ------------------ Pressing F3 will bring up the search-and-replace text entry prompt at the top status bar. Fill in the text you wish to search for and press ENTER. Then fill in the text you wish to replace the search-for text with. If the specified string is found, the editor will move the viewing position so the text is visible, and the cursor will be placed on the match. You will be prompted to press Y or N (Yes or No) to confirm replacing the matched text with the replacement string. Choose the appropriate response. The search will begin from the current cursor position forward. To search and replace the entire file you must move to the beginning before searching (press HOME three times). To search for the NEXT occurrence of a previously matched text string, simply press F4, "Search again". If more text is found, you will again be asked if it should be replaced. Search Again ------------ Search again is attached to the F4 function key. Its purpose is to continue with the previous search or search-and-replace, whichever was performed last. If the previous action was to search for a text string, pressing F4 will continue searching for more occurrences of the same string, starting just past the current cursor position. If the previous action was to search for a text string and replace it with another, pressing F4 will continue searching for more occurrences of the same string, starting just past the current cursor position. If another occurrence is found, you will be asked if you wish to replace it, or leave it as-is. Marking and Bounding a Block of Text ------------------------------------ Many functions require that you identify a section of text to act upon. For example, to move or copy a paragraph or sentence, you must first define the exact area of text to move or copy. You do this by "marking" the desired section. The first step is to move the cursor to the desired text-block starting position. This spot is then identified as the start of the block by pressing ALT-A (drop anchor mark), CTRL-K (Mark/Bound toggle) or F11 (Mark begin). The cursor is then moved to the end of the desired text section. This section is then identified as the end of the block, or "bounded", by pressing ALT-A, CTRL-K or F12 (Bound). The text area that is now marked will be identified by being highlighted (reverse video). You may now use any of the defined block commands on this section of text. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 41 Unmark ------ To remove the highlight, or "unmark" a block of text, simply press ALT-U. Save and Exit ------------- The F10 key may be used to request an exit from the current editing session, saving the work to disk first. If no changes have been made to the current file, the file is not rewritten. Exiting without Saving ---------------------- To exit the editor without saving any changes, simply press ESCAPE. If not modifications have been made to the displayed text, you will be allowed to exit without answering any confirmation prompts. If, however, changes have been made to the text, you will be asked if you wish to save your work first. If you respond YES, the changes will be recorded to disk. If you respond NO or press ESCAPE, the editor will recognize this as a serious request to exit without saving any changes. Just to be sure, you will once again be asked if this is really what you want to do. Responding YES will finally exit you from the editor, discarding any changes you have made. Responding NO will save the changes to disk and exit. HOME and END ------------ The HOME and END keys are treated a little differently than the other keys. MR/2 is sensitive to the number of consecutive times these two keys are pressed. The first time HOME is pressed, the cursor is moved to the first character on the current line. If it is immediately pressed again, the cursor is moved to the first character of the first line currently displayed (i.e., the upper left corner of the editor screen). If it is pressed a third time, the cursor is placed on the very first character contained in the current file. MR/2 will adjust the display position to the very beginning of the file. The first time END is pressed, the cursor is moved to the last character on the current line. If it is immediately pressed again, the cursor is moved to the last character of the last line currently displayed (i.e., towards the lower right corner of the editor screen). If it is pressed a third time, the cursor is placed on the very last character contained in the current file. MR/2 will adjust the display position to the very end of the file. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 42 Toggling the Display of Marker Characters ----------------------------------------- ALT-V toggles the editor display's "visual mode" on and off. When visual mode is on, all special characters such as paragraph symbols, centering codes and end-of-file markers become visible. When toggled off (the default), these symbols are hidden from view and only readable text is displayed. Importing and Exporting Text ---------------------------- The editor has a simple system for importing existing text files into the current file, and for exporting marked blocks of text to external files. To import and existing text file at the current cursor position, press ALT-R to "read" in the file. You will be prompted for a file name. Fill in the correct name and press ENTER. The entire contents of the file will be inserted at the cursor's current location. To export a block of text to a file, first, use the Mark (F11) and Bound (F12) keys to identify the section of text you wish to export. Press ALT-W to "write" the block to a file. You will be prompted for a file name. Fill in the desired file name and press ENTER. The entire block of marked text will be written to the specified file. If no section is marked, the entire text of the current editor session is written to the file. Optional Utilities - Spelling Checker and Thesaurus --------------------------------------------------- There are some advanced features of the internal editor that are entirely optional. These options require the existence of one or more files in the MR/2 software directory to be enabled. Since many users will not choose to use the internal editor, and even those that do may not need these features, the required files are distributed separately from the MR/2 main files. Additionally, these files tend to be quite large and rarely change, so they need to be downloaded, if desired, only once. These options include an spelling checker and thesaurus. See the section about installation (in the front of the manual) for specific information about acquiring these files and their sizes. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 43 The Internal Spelling Checker ============================= Access to the internal spelling checker is provided from within the internal editor. Even if you're using an external editor for messages, you can load a message into the spelling checker. To access the spelling checker, you must have first "installed" the word database. Since the spelling checker is totally option (not everyone will find it useful, or wish to bother with downloading it), and the associates file can be quite large, it is distributed as a separate ".zip" file. Currently there are two different "dictionaries" available; offering small (60,000) or large (120,000) word database. Others may be made available as needed. The internal spelling checker is installed and available if the file "MR2DICT.BIN" is found in the MR/2 software directory. See the section entitled "Install MR/2" for more information. From within the internal editor, CTRL-F2 will invoke the spelling checker main menu. If MR/2 cannot find a file by the name of "MR2DICT.BIN" in the default MR/2 software directory, the dictionary will not be available. If you press CTRL-F2 under this condition, MR/2 will simply inform you of this with the message "Dictionary file(s) not found". The spelling checker main menu contains these options controlling how much of the current message to check: File (from beginning) Rest of file Block Word You may also press ESCAPE to abort the spelling checker process and return to the editor. If you select "File (from beginning)", all words from the beginning of the document will be checked. Without operator intervention, and if a misspelled word is not encountered, all words through the end of the message will be checked. Selecting "Rest of file" will start checking words from the current cursor position through the end of the document. The "Block" option allows you to mark and bound a specific section of the message to check. All words form the beginning of the marked section through the end of it will be checked for correct spelling. If you chose the option labeled "Word", only the spelling of the word at the current cursor position is checked. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 44 NOTE that this is a normal MR/2 menu, so pressing "W", for example, will invoke the "Word" option. The spelling checker process has been programmed to check messages intelligently. This basically means that "quoted" text lines are not checked for spelling errors. Only lines of text deemed to be created by you, and seen as part of the reply or new message text will be checked. You can, if you desire, test individual words inside a quoted section. There are a other few ways in which quoted text can be tested, but MR/2 usually assumes that anything "quoted" should be left untested. As each word within the message is tested, the status line at the bottom of the screen is updated with the word. This is a simple progressing indicator. After all words have been tested, the status line is updated with a "completed" indicator, giving the number of words checked and a count of misspelled words. You may terminate the spell checking process at any time simply by pressing ESCAPE. MR/2 will display a prompt, asking you if you really want to stop the testing. This gives you a chance to continue with the spelling checks, or stop and return to the editor. When a word is not found in the word database, your "user dictionary" is checked for the word. If found, the spelling checker deems the word to be correctly spelled. If not found in either word lists, a new menu will be displayed offering some options. For example, a typical option menu would look like: ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º Not found: Soundexing º ºÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͺ º 1 - sonnetting º º 2 - soundproofing º º 3 - sounding º º 4 - solemnizing º º 5 - solidifying º º 6 - soliloquizing º º 7 - solubilizing º º 8 - somnambulating º º 9 - sophisticating º º 0 - sortieing º º ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ º º S - Skip º º I - Ignore on this pass º º E - Edit º º A - Add º º Q - Quit º ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 45 NOTE that you may also use the internal spelling checker "automatically" even when an external editor is used for messages. The INI parameter "PostProcess" is available for performing external functions with a reply after leaving the external editor. This allows for external spelling checkers or any other utility of this type. If PostProcess is set to "Internal", MR/2 will invoke the spelling checker against the modified reply automatically. By the same token you may use the PostProcess parameter to specify an external spelling checker (or any other utility you wish) that will automatically be invoked after a message has been edited. This allows for your favorite speller to be used even if you decide to use MR/2's internal editor. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 46 The Internal Thesaurus ====================== The internal thesaurus is installed and available if the file "MR2THSRS.BIN" is found in the MR/2 software directory. The thesaurus is available as a pop-up selection list of words while inside the internal editor. To activate the thesaurus, simply position the cursor over the word to "look up" and press ALT-T or ALT-F1. The thesaurus has two internal search modes; key and sequential. A key search is the quickest, but also the most likely to return without a match. The sequential mode is the most thorough, searching the entire word base for any trace of the source word. This also makes it the slowest method. MR/2 combines these two methods to give you the best of both worlds. The first attempt to find the word is by key. If the word is a key in the word database, then a list of synonyms will be displayed very quickly. If not found as a key, MR/2 will start a sequential search for the word (as a synonym to any other word). While this is being performed, a status message is displayed for your information. You may press ESCAPE at any time to cancel the word-search and return to the editor. If the source word is not found anywhere in the word database, you will be informed of this and returned to the editor. In this case, MR/2 will not be able to provide any suggested replacements for the source word. If you can think of another word that may give better search results, simply type it into the editor, as a separate word, and activate the thesaurus again. You can remove the word later, if desired. If the source word is located in the word database, a list of synonyms will be displayed, along with various options. At the top of the screen will be a boxed help-list of possible keyboard actions. The boxed list will resemble this: ----------------------------------------------------------------- ALT-S Search for more ALT-L Lookup this word ENTER Replace word ALT-E New search word ALT-X Exit thesaurus ALT-A Append word ESC Back one level ALT-I Insert word ----------------------------------------------------------------- ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 47 The list of possible replacement words will be displayed in a selection list. For example, the word "Large" might result in the following display: ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º LARGE º ºÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĺ º LARGE º º FAR-REACHING ² º BIG ° º WIDESPREAD ° º GLOBAL ° º COLOSSAL ° º COMPREHENSIVE ° º HUGE ° º EXTENSIVE ° º MAJOR ° ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ To replace the word "large" in this example with the word "colossal", simply move the cursor down to highlight "colossal" and press ENTER. If the words listed are not quite what you want, you may chose from the following options: ALT-S Search for more --------------------- This will cause a search for additional occurrences of the source word to be performed. If you are starting from a synonym list that resulted from a "key" match, the sequential search for more matches will start from the beginning of the word database. If a sequential search was already performed to acquire the displayed list, or if you have pressed ALT-S before, then the search for more matches will proceed from the current word base position. MR/2 will inform you if no more matches can be found. ALT-L Lookup this word ---------------------- This will cause an entirely new line of searching to be performed, using the currently highlighted word as the new "source" word. You will not lose your position for the current source word; this simply branches into a new search. This allows you to explore lists for words that don't seem quite right, but that may them possess a synonym that fits. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 48 ALT-E New search word --------------------- While searching for a synonym, you might think of a word yourself that is a synonym. This word may be the replacement you want, or it may give MR/2 a better clue as to which word lists to display. If the current list doesn't provide what you want, and you wish to explore your new word, you can press ALT-E and enter the new search word manually. ALT-A Append word ----------------- This will cause the highlighted word to be inserted into the editing text after the source word. The source word will be left in place; the new word is added to the text after it. ALT-I Insert word ----------------- This will cause the highlighted word to be inserted into the editing text before the source word. The source word will be left in place; the new word is added to the text before it. ESCAPE Back one level ---------------------- Pressing ESCAPE will exit the current "top" word list and move back one level to the previous list. If only one list is displayed at the time, the thesaurus will be exited and you will be returned to the editor. ALT-X Exit thesaurus -------------------- This will cause an immediate exit of the thesaurus and all its popup menus and word lists. All levels are exited, and no word replacement is performed. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 49 Advanced features ================= This section will address issues that a first-time or new user may not want to concern themselves with. It describes features that are not necessary for basic packet reading and replying, but offer great power and flexibility to the more-experienced user. Internal Spelling Checker and Thesaurus --------------------------------------- These features are described in there own sections, above. External Spelling Checker ------------------------- MR/2 recognizes the INI keyword "PostProcess" as a way to identify an external procedure to perform after any message has been edited and saved. This allows utilities such as spelling checkers or formatting tools to be run against a reply or message file before it is returned to MR/2. For example, the line: PostEdit = c:\utility\ss instructs MR/2 to invoke the command line "c:\utility\ss reply" where reply represents the reply file name just edited. In this example, the DOS-based shareware spelling checker "ShareSpell" is invoked. You may use this technique with an external or the internal editor. NOTE: There is also a "PreEdit" INI keyword for processing of the reply file before the editor gets control of it. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 50 Local INI files --------------- You may now create a supplemental "INI" file for any/all BBS's that you get mail from. MR/2 still loads its options from MR2.INI, but you may now change some of these options automatically by BBS, when a packet is opened. Once the packet is unpacked and the BBS "ID" is extracted, MR/2 checks its "base" directory (where MR2.INI resides) for a file named after the BBS, with a ".INI" suffix. For example, after unpacking a QWK packet from PC-OHIO, MR/2 will load options from a file named "PC-OHIO.INI", if one exists. Obviously, some options will have no effect (e.g., PacketPath has already been used and is no longer pertinent, as is WorkPath), but things like tagline files and quoting styles can be changed on a BBS-specific basis. If a "BBS" .INI file is accessed, MR/2 will reload the global MR2.INI file when the current packet is closed. NOTE that when the local, BBS-specific INI is accessed, MR/2 has already changed the directory down one level, to the working subdirectory. That means that files located in the MR/2 software directory must be named with either a full path specification or prefixed with "..\". For example, if "OS2.Tag" and "Misc.Tag" are both in the MR2 directory, MR2.INI may have a tagline specification: TagLine = OS2.Tag However, if a local INI for the CRS BBS is to access "Misc.Tag" instead, the INI line should read: TagLine = ..\Misc.Tag Local INI files are also handy for declaring virtual conferences that tend to be specific to a certain BBS. Any virtual conference that is to be built using specific conference numbers will probably be placed in a BBS INI file. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 51 Virtual Conferences ------------------- The ability to create virtual conferences is one of MR/2's most prized features. Basically, virtual conferences are a "virtually" unlimited list of automatic searches to perform. You see the final, cumulative results of these searches as conferences. MR/2 will build conferences containing messages that match search criteria defined by you. All messages found to match will be included in the defined conference. The "MakeConference" parameter is added in the MR2.INI file, or can be added into the BBS specific INI file. See the included file "Search.Ini" for examples. You can have criteria listed in the MR2.INI *and* the BBS ini, and they will be combined correctly. For example, the following set of lines: MakeConference = MR/2 String = MR/2 will result in MR/2 searching (in the background, multithreaded) all message for the string "MR/2" and creating a custom "MR/2" conference that will appear in the Conferences w/Mail menu. Once the defined custom conferences have been built, these new conferences will be added to the displayed selection list. The maximum number of search result conferences is "unlimited" - at least in a practical sense. Memory is the issue, and valid file names. Theoretical, it is possible to define up to 26,000 virtual conferences, although this might be a little excessive. A single pass is made through the message base - for each message, all combinations of search criteria are evaluated and the message is recorded in any/all of the conferences it's found to belong to. MR/2 will "beep" (low sounding tone) when it's done searching. As another example: MakeConference = DR DEBUG/C/C++ & OS/2 Conferences=93,99,111 Check = Body, Subject String = OS/2 defines a conference that will display with a rather verbose name, and will contain all message from conferences 93, 99 and 111 in which "OS/2" was found in the body or subject of the message. A conference number of "*", or a missing conference line will cause ALL conferences to be searched. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 52 This feature is particularly handy when watching for seldom- occurring words or phrases. The topics "CTOS" and "bar coding" might appear in only a few messages a month. Since they rarely appear, it would be impractical to search for them for every packet opened. With a pre-defined search, these words are always checked for, and an occurrence will never(*) be missed. Simply add the lines: MakeConference = Miscellaneous Conferences=* String = Barcode\Bar Code\CTOS The building of virtual conferences all happens in a separate "thread"; as a background task. Every time you open a packet, a background process is launched that searches the entire message base while you do "other things". Virtual conferences are also great for building a pseudo-personal conference for Usenet messages converted to QWK, since these are usually addressed to "ALL". Simply define a search on your name, listing all the Usenet conferences read. As an extended example, consider the hundreds of "Forsale" messages posted every day, spread across a dozen or so real conferences. To look for a particular item by opening every conference individually and manually searching for a keyword would be tedious. Looking for multiple items would be laborious. This is the perfect place for a virtual conference or two. Any mention of an interesting item would be recorded in a conference and there would rarely be any reason to open the "real" Forsale conferences individually. In fact, it is possible to "hide" the real conferences from view, keeping them out of the selection list. Other INI parameters have been added to compliment the new MakeConference option. The parameter "ShowEmpties" controls whether empty custom conferences are to be displayed with message counts of "(0)". If NO is specified, empty conferences do not appear at all in the conference list. "DisplayStatus" will show the message search/hit counter on the bottom of the screen if set to YES. "SeparaterBar" will place a line between the normal and custom conferences if set to YES. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 53 Template Files and Sections --------------------------- The template file contains text that is used as "boilerplate", or simply standard text patterns to use for replying, new messages and several other miscellaneous functions. The template file is broken into "sections". A section starts with the name of the section to follow, enclosed within accent characters, "`". For example, the start of the Internet section will be denoted by a line containing the marker `Internet`. The section ends when the next section name is encountered, or when the end of file is found. The very first section has no name or section marker and is called the "default" section. When a normal, public reply is being created, or when a particular template section does not exist, the default section is used. When MR/2 is to create a message file for you to edit, it will create this file from an appropriate template section. If you are replying publicly to a message, the default section is used. If you are replying privately into the conference specified as the Internet conference, then MR/2 will use the `Internet` section. If the message is a private Internet message and is not a reply but a "new" message, then the `NewInternet` section is used. The template section is copied to the message file before you get to edit it. At this time, any variable names (words wrapped between "@" symbols) are replaced with the corresponding text value for that variable. The special marker "$Body" is used to denote where any quoted text should be placed, or where the new text (for a "new" message) will start. This allows for an "attribution line" at the beginning of the message to contain such things as the message date and/or time, the user names involved, the conference name or number, etc.,. In fact, an attribution line can actually be several lines; as many lines as you would like to use. The same principle applies to a signature or closure line. The signature section may consist of several lines, a list of your common email address, for example. An example template file is provided with MR/2 as the file "Example.tf". The default INI created by MR/2 specifies a template file name of "template.tf" You may wish to modify the example file to fit your tastes, then copy or rename it to "Template.tf". Template lines starting with two semi-colons, ";;", are seen as comment lines and are ignored. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 54 The following template sections are available for use: Default Reply This is the "default" template section. MR/2 will use this section when no other specialized section seems appropriate. All public, non-routed replies will be created from this section. NewMessage This is the section that will be used to generate the initial reply format for all new, unprovoked messages that are not private and/or routed with a private address. Internet This is the section that will be used to generate replies that are placed in the INI-defined Internet private-mail conference. Any reply to a private Internet mail message will inherit this format, as will any reply to a public messages that is transferred to the Internet private mail conference. NewInternet This is the section that will be used to generate new messages that are placed in the INI-defined Internet private-mail conference. Netmail This is the section that will be used to generate replies that are placed in the INI-defined Netmail private-mail conference. Any reply to a private Netmail mail message will inherit this format as well. NewNetmail This is the section that will be used to generate new messages that are placed in the INI-defined Netmail private-mail conference. Rime This is the section that will be used to generate private replies in any conference recognized to be RIME hosted. MR/2 will parse the Postlink origin line and can make Rime site numbers and ID's available via @ variables. If you reply to a public message in a Rime conference and make the reply private, this section will be used. If you reply to a Private, routed Rime message and keep it private, this section will be also used. NewRime This is the section that will be used to generate private "new" messages to address-book entries with their section marked as "RIME". MR/2 will place the message in the designated conference and will use the data in the "first line" field to replace both the Rime site number and ID @ variables. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 55 Forward This is the header text for forwarded messages. The default MR/2 header consists of 3 simple lines of attribution, followed by a dividing line. You may modify this section to create your own "Forwarded from/to ..." header. SaveHeader This is the boilerplate text that is used when a messages is saved to a text file. It proceeds the body of the messages, and by default contains an almost exact copy of the message header as it appears in the online message viewer. PrintHeader This is the boilerplate text that is used when a messages is sent to a printer. It proceeds the body of the messages, and by default contains an almost exact copy of the message header as it appears in the online message viewer. NOTE: These are the only section names automatically recognized by MR/2 at this time. You may, however, make up your own section names for use with the address book. It would be easy and often convenient, for example, to have an informal "InternetBuddy" section defined. For address book entries where the target user was known personally and considered to be a friend, the template for replies and/or new messages might be made more informal than a normal Internet reply. Template Variables ------------------ This section will describe the variables available for use within the template file used by MR/2. These variables are placed in the template file section(s) desired, wrapped in "@" symbols. To place the BBSID in a reply to a "normal" public message, the default template section will contain the variable reference "@BBSID@". For example, the template line: In a message posted on the @BBSID@ BBS: will be replaced with (assuming the current packet is from the PC-OHIO BBS): In a message posted on the PC-OHIO BBS: Most of these variables are straight text-value replacement variables. There are several, though, that are intended to aid in formatting. There is a template section in the example template file "example.tf" that demonstrates the use of many of these variables, including some handy formatting examples. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 56 Variables available for use in template sections include: AMPM The time of day, either "AM" or "PM" as defined by the current system time. BBSID The packet's source BBS 8 character identifier, "PC-Ohio" for example. CENTER This is a modifier and does not actually cause data to be placed in the text. It modifies the way the next variable is formatted. The very next variable will be centered either between column 1 and the defined "WrapLinesAtColumn" setting, or centered over a given column. For example, "@Center@@ConfName@" will center the current conference name between the message's margins. Using "@Center:20@@ConfName@" will center the conference name over column 20. COL This is a modifier and does not actually cause data to be placed in the text. It modifies the way the next variable is formatted. The very next variable will be placed at the column specified by this variable. For example, "@Col:20@@ConfName@" will place the current conference name on column 20 of the current line. Negative columns are allowed and will result in the specified number of characters being removed at the end of the current line before the next text is placed. CONFNAME The name of the conference that the source message originated from. CONFNUM The number of the BBS-specific conference that the source message originated from. DATE The current system time in MM/DD/YY format. DAY The literal for the current system day of the week (e.g., "Saturday"). FIDONET For a source message with a Fidonet origin line, this variable will hold the Fidonet address (e.g., "1:157/200". In a new message, the address book can control the value of this variable. FROM FROMFIRST FROMLAST The original message "FROM" user's name. Accessible as a whole or by first and last. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 57 IDATE The "Date" line from an Internet messages, if found, otherwise it is replaced as the DATE variable. INTERNET Will contain the Internet address of the sender of an Internet or Usenet message. In a new message, the address book can control the value of this variable. ISUBJECT The "Subject" line from an Internet messages, if found, otherwise it is replaced as the Subject variable. ITIME The "Time" line from an Internet messages, if found, otherwise it is replaced as the TIME variable. JULIAN The current system date as a 3 digit Julian date. LOWER This is a modifier and does not actually cause data to be placed in the text. It modifies the way the next variable is formatted. The very next variable will be converted to all lower case letters before its data is inserted into the text. MIX This is a modifier and does not actually cause data to be placed in the text. It modifies the way the next variable is formatted. The very next variable will be converted to simple "mixed" case before its data is inserted into the text. That is, the first letter of each word will be capitalized, all other letters converted to lower case. MSGDATE The date of the current message as found in the QWK header (the same date the viewer shows). MSGNUMBER The message number of the current message. MSGREFNBR The reference number of the current message, if one exists. Blank if not. MSGSTATUS The message status for the current messages, as displayed by the message viewer. MSGTIME The time of the current message as found in the QWK header (the same time the viewer shows). ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 58 RANDOM This is a very complex variable that actually calls for a random phrase replacement from the contents of a file. For example, the variable "@Random:..\phrase.phr@", will be replaced with a line from the file "..\phrase.phr". A random number generated is used to select the line whose data is to be inserted. NOTE that this file may in fact contain other @ variables that are replaced before the data is inserted. See the example provided below for more detail. RCOL This is a modifier and does not actually cause data to be placed in the text. It modifies the way the next variable is formatted. The very next variable will be right-justified against a specified column, or the defined right margin (the "WrapLinesAtColumn" setting). For example, "@RCol@@ConfName@" will right justify the current conference name at the message's right margin. Using "@RCol:50@@ConfName@" will right justify the the conference name to the left of column 60. RIMEIDCODE RIMESITENO Will contain the Rime address of the sender of an Rime "Postlink" message. In a new message, the address book can control the value of this variable. SELECT This is a very complex variable similar to the RANDOM variable. This variable actually calls for a user-prompted phrase replacement from the contents of a file. For example, the variable "@Select:..\phrase.phr@", will be replaced with a line from the file "..\phrase.phr". The user decides which line to use, as the file is displayed in selection-list form. If a phrase is not selected (ESCAPE is pressed), MR/2 will select a phrase at random. NOTE that the phrase file may in fact contain other @ variables that are replaced before the data is inserted. These imbedded variables will show in the selection list unaltered; they are not resolved into real data until a selection is made. See the example below for more detail. SERIALNUMBER This variable contains your MR/2 serial number if you are a registered user. SUBJECT Contains the current message's subject string. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 59 TARGETTO TARGETTOFIRST TARGETTOLAST The message's targeted "TO" user name. Accessible as a whole or by first and last. This can often be different when a reply is sent to a different user or "toggled" to be directed to the original message's TO user. TIME The current system time in 12 hour format. TIME24 The current system time in 24 hour format (military time). TO TOFIRST TOLAST The original message "TO" user's name. Accessible as a whole or by first and last. UPPER This is a modifier and does not actually cause data to be placed in the text. It modifies the way the next variable is formatted. The very next variable will be converted to all upper case letters before its data is inserted into the text. USERNAME Your user name as it appears in the BBS's control file. This is usually the same name as you use to sign on to the packet's source BBS, and the same name that appears in your "personal" messages. VERSION This variable hold the current MR/2 version string. For example "v2.0". YYMMDD The current system date in YYMMDD format. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 60 Additional Notes about Variables -------------------------------- Variable replacement is recursive, so that the user-defined variables V0 through V9, for example, can contain other variables. Taglines may contain variables. These variables will be resolved to runtime values when selected from the tagline file. There are two variables for use with templates to allow random and user-selected phrase insertion. First, there must exist a text file containing a list of possible phrases, one per line. Then, the template file must contain one of the following (assuming "phrases.phr" is the file name and it resides in the MR/2 home directory. Remember, when replying, you're pathed into the TMP$$ sub directory): @SELECT:..\phrases.phr@ @RANDOM:..\phrases.phr@ Select will build a list of the file's contents and display the phrases in a selection box for you to pick from. If you ESCAPE from the selection without picking an entry, MR/2 will randomly select one for you. If you choose the RANDOM option, no user prompting is performed; MR/2 randomly selects one of the phrases to include. You may have multiple phrases per template line, as many as you want in any given section. They are processed one at a time. Phrases may even contain other @ variables, however, these variables are not replaced with data until AFTER the phrase is selected. There should be no reason a random phrase couldn't reference another select/random phrase clause, if you care to get that complicated. When you're selecting a phrase manually, the template line in progress is displayed on the bottom "status" line of the screen. Here's an example default template section: ================================================== On @MSGDATE@, @FROM@ @SELECT:..\SAID.PHR@ to @TO@: $BODY To which, @SELECT:..\TOD.PHR@, I reply: Nick ==================================================== ----------------------------------------------------------------- ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 61 MR/2 User's Manual - Table of Contents Page 61 The contents of the file "SAID.PHR" might be: said spewed bellowed expounded proclaimed jabbered mumbled and "TOD.PHR" might contain: on this brisk morning in the heat of the night in a babbling frenzy without a hint of intelligence The suffix ".PHR" is used here to stand for "phrases". Phrases should be of a reasonable length (none longer than 200 chars, for select, only 76 are usable). In this example, MR/2 would prompt you first to pick an entry from "Said.phr", then display a selection list of lines from "Tod.phr". A reply using the template above combined with the "phrases" you selected would be built and sent to your editor. If the keyword "SELECT" were to be replaced with "RANDOM", then MR/2 would not prompt for a selection, rather it would simply pick a line from each file at random. ----------------------------------------------------------------- ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 62 MR/2 User's Manual - Table of Contents Page 62 Address Book ------------ MR/2 has the ability to record and recall email addresses and other pertinent information from a simple text file. To access an address-book entry, you use the first field of the record as the identifier or "tag". When filling out the message header "TO" field, enter a "!" followed by an address book tag, tab or enter out of this field and the address book data will be accessed and automatically applied. For example, to send an Internet message to the author (assuming you have a private Internet mail conference defined), type "!NK-I" as the TO user and press ENTER. MR/2 looks for a BBS.adr (e.g., "NERDNOOK.adr") first, then "MR2.Adr" second, both in the MR/2 base directory. NOTE that you may also press F2 while in the TO field of the message header to pick from a list of existing addresses. The format of the address book file is: Tag | Description | TO | Conf # | Private? | Section | Address Tag is a short identifier used to reference the address. Description is a free-form field to help you remember who/what this address is for. To is the name to plug into the TO; header field. Conf # is the conference in which to place the message. NOTE that this is usually a specific number, but "I" is allowed and will be replaced with the conference number set as your "Internet" conference. Also, "N" is allowed and represents the defined Netmail conference. Private is either "Y" or "N", representing the privacy flag. Section identifies the template section to use. Sometimes this may obviously be unnecessary, but it does allow for user-defined sections to be created and used for specific address book entries. "Internet", "Netmail" and "Rime" will be used most frequently. NOTE: "New" is automatically prepended by MR/2 when entering "new" messages. Address is the first-line address code. If the template section uses the @Internet@, @Fidonet@ or either of the @Rime*@ variables, the contents of these variables will be set to this string. NOTE: There is no error checking or identification by BBS name, other than allowing for BBS-specific address books. MR2.Adr, if it exists, is always references, but after any bbs-specific file has been checked. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 63 Use of the "N" and "I" conference identifiers helps make some addresses less BBS-specific. For example, you can send Fidonet Netmail from any of several different BBS's. Your MR2.adr can contain Netmail addresses for use on all BBS's, as long as your template file(s) have been set up correctly and private mail conferences have been identified in the BBS-specific INI's. This can get complex - but it also can be quite powerful and handy. Selecting from the Address Book ------------------------------- While editing the message header, pressing F2 when inside the TO field will display a selection list of existing addresses. You may pick an address from this list to use for the current message or reply, or you may actually perform changes to the address book at this time. To select a target address and have the message header edit screen updated with this address, simply highlight the desired address and press ENTER. Address Book Maintenance will be covered in detail, below. Address Book Maintenance ------------------------ You may add new, modify or delete existing records from the address book selection screen. Press ALT-A to add a new entry to the book. You will be presented with an empty Address screen for entering the new address. Fill in all pertinent data and press F10 to save the information. If you wish to modify an existing address, simply highlight the entry and press ALT-C to change. In this case, the Address screen will be displayed containing the data for the selected address. Change as desired and press F10 to save it. To delete an address book entry , highlight the desired address and press ALT-D to delete it. You are prompted to confirm the deletion before it is made permanent. NOTE that you can also "steal" an address from an existing message or reply. Simple press ALT-A while viewing a message. The address book text file is rewritten each time a single change is made. The previous version is copied to bbsname.old or mr2.old, depending on which book is being modified. This gives you the ability to "undo" the last change made by copying the .old file back to the original. Only the very last change may be reversed, though. NOTE: Address book tags are resolved in a first-found order. The local address book, if one exists, is checked first. If not found there, the global MR2.ADR is checked. If duplicates exist, only the first one found (searching the file(s) sequentially) is the one that's used. Pick list selections go through the same process ... so picking the "other" one doesn't matter. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 64 Configuring for Multiple Archivers ---------------------------------- The archiver/unarchiver to use for packing replies and unpacking QWK packets, respectively, are specified in the MR2.INI file as the "Zipper" and "Unzipper". In the majority of cases, these will be specified as PKZip and PKUnzip, or some variation or clone of these two popular utilities. Some BBS's use different compression software and some let you select the software to use. For users who access one BBS, or who access multiple BBS's that all use the same compression utilities, the simple form of specifying the zipper/unzipper directly may be used. For cases where a user visits many BBS's, and for some reason these BBS's use different compression software, you will probably choose to use MR/2's REXX-based support for automatic archiver detection. NOTE: The REXX command files included also provide support for long file names with MS-DOS or other HPFS-unaware compression utilities. Merging Packets --------------- Merging multiple packets from the same source BBS into a single QWK is available. This features is described in its own section, above. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 65 Running Multiple Copies of MR/2 ------------------------------- It is possible, and in fact sometime quite advantageous, to run multiple copies of MR/2 and share data between them. This is handy for viewing multiple packets at the same time, where you wish to copy all or some of the contents of one message into a message targeted for a different BBS. You may run these multiple copies in windowed session, if desired, although cut and paste using the system clipboard is available even in full-screen sessions. MR/2 cannot, at this time, share an open packet between two sessions (* see note below). For this reason, it is necessary to run each separate MR/2 session using a different working directory. The "/W" command line parameter is available specifically for this purpose. By default, MR/2 uses the work directory path specified in MR2.INI. You can override this path and specify a different subdirectory as the working directory simply by using the parameter, followed by the working directory name. For example, let's assume you've left MR/2's default working directory specification (in MR2.INI) to be "tmp$$". This means that MR/2, when a packet is selected for reading, will create a subdirectory names "tmp$$" (if it doesn't exist), change its path so that this is the current directory, and unpack the selected QWK packet. If you wish to unpack into and use a subdirectory named "tmp$$two", you would simply invoke MR/2 with a command line that looks like (or from an icon that mimics): MR2 /Wtmp$$two You may open more than two copies of MR/2, as long as a different working directory is specified for each. Since MR/2 can write to and read from the system clipboard, transferring data between two or more sessions is very easy. See the appropriate section on clipboard access for more information. (*) At this time, this manual is being finalized for the release of MR/2 version 2.0. Some new features have been started, but will not be available in version 2.0. Please examine the READ.ME file for any advancements regarding CLONING an existing session and/or working with multiple QWK packet/sessions. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 66 Reply Log --------- Reply logging is available, if desired, and is set to YES by default in a newly created MR2.INI file. This option controls whether or not your replies are recorded or "logged" in a special conference for reference. If Reply Logging is set to NO, then new replies will not be appended to the reply log, if one exists. If a reply log is found for the current BBS, it will be available as a conference for reference regardless of the current setting of this flag. To completely remove an existing reply log from view, you must delete "ReplyLog.Dat" in the BBS's subdirectory, or rename it to something else. When Reply Logging has been set to YES, normal reply logging is activated. For each .REP packet that you make for a given BBS, a "shadow" file duplicating those replies is made. Whenever MR/2 is loaded and sees a "shadow" file without a corresponding .REP packet, the shadow file's contents are appended to the reply log, then the shadow file is deleted. Using this technique, the reply log will contain only those replies from the latest version of any given .REP file, and a .REP file may be deleted even outside of MR/2 without losing the information necessary to log them. If the ReplyLog parameter is set to FULL, then logging of both replies and the original source message that provoked the reply is logged. The source message is actually added to the log after the reply. The original source messages are not shown in the header index list, nor are they shown when stepping through each messages. To view a reply's source message, press "J" while it's on the message viewer screen. This will "jump" to the source message. You may reply to this original message again, if for some reason you wish to. If for any reason you wish to repost a given logged reply, press "R" as you would to modify any existing reply. You will have an opportunity to make changes to the reply (it will be loaded into your editor for revisions), or you may accept it "as is" simply by saving it. Once saves, the message will be copied into the reply conference, and will be packed with your next .REP packet. NOTE: When selecting the reply log from the "Conferences w/Mail" section screen, it may seem to take MR/2 longer than usual to actually display the first message in the viewer. This will be particularly noticeable if reply logging is set to FULL. This is because there are usually more message in the log than reported in the pick list. For any given message, there may be a source/original message recorded with it. So, while the Reply Log may contain a reported 100 replies, there may actually be as many as 200 message inside. It takes about twice as long to build a header index from 200 messages than it does with only 100, so the wait seems longer than "usual". ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 67 Cut/Paste - Accessing the PM Clipboard -------------------------------------- MR/2 allows limited access to the system clipboard from within the internal editor. This access includes writing marked sections to the clipboard (use F11 to mark, then F12 to bound a section) and retrieving clipboard text into a document. There are also commands to APPEND a marked section to what already exists in the clipboard, and a key combination that allows the clipboard to be cleared. Key are as follows, using the grey "numeric" keypad for these keystrokes was the intention (although the normal keypad versions work, too): ALT- Cut to clipboard Alt+ Copy to clipboard Alt= Append to clipboard (or ALT-ENTER) ALT/ Clear clipboard ALT* Paste from clipboard Notes on Running External Executables ------------------------------------- Whenever an external utility is accessed by MR/2 (as specified in your INI file), the default action is to call my compiler's run- time "system()" function. This function actually loads a new command processor, passing the data you provide as the file specification as the command line. While this is a fine generic solution and usually works dependably and "fast enough", there are times where it is undesirable. There are also time when this technique doesn't work at all. Often, loading the command processor may be unnecessary and a waste of time. To remedy these problems, MR/2 offers some prefix codes for direct loading of executables. I have received multiple reports of problems regarding MR/2 and 4OS2. When loaded from an icon with 4OS2 as the command processor, some experience problems. For others, it works just fine. There seems to also be a problem when your system actually boots OS/2 from a partition other than C:. The two of these may be related ... one user both booted from his D: drive and used 4OS2 and experienced trouble running MR/2 from an icon. The problems appeared as errors when loading the zipper/unzipper and/or an external editor. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 68 There are several methods for specifying an executable that is to be invoked directly (without loading the command processor). using an external editor as an example, they are: Editor=q loads q.exe the same old way. Editor=!c:\qe3\q.exe loads a windowed Q.exe on the desktop, running q.exe directly (no cmd.exe involved). File must be fully qualified with full path specifications. Editor=!!c:\qe3\q.exe loads a full screen session w/o loading cmd.exe - q.exe loads directly. Fully qualify the file name. Editor=!$c:\qe3\dos\q.exe loads a DOS windowed session, loading Q.exe directly. CMD.exe is not accessed, but command.com is. May still cause D:\ booting problems, but it's an option. Editor=!$!c:\qe3\dos\q.exe Loads the DOS Qedit into a Full screen DOS session w/o accessing cmd.exe. NOTE that these work with the zipper/unzipper, too, as well as PreEdit, PostEdit, F2-F10, etc.,. Anytime an external utility is called, MR/2 checks for these prefixes for special processing. ----------------------------------------------------------------- ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 69 MR/2 User's Manual - Table of Contents Page 69 INI File Parameter/Options - Detailed Descriptions -------------------------------------------------- AllUpperCase=Yes Converts Subject, From and To user names to upper-case before saving replies, if set to YES. If set to NO, the case you supply is preserved. Attributes=NONE Attributes=Extended When preparing to edit reply files, MR/2 can optionally mark these files as type "Plain Text" so, for example, the "E" editor will not force you to set the type before saving. AutoFirstKey = Q This is a keypress that can be automatically simulated whenever you first enter a conference. For example, if the first thing you do upon entering a new conference is to press Q for the Quick Thread Summary, specifying Q will do this for you. Another logical choice would be to specify the I key. NOTE that this feature works ONLY for conferences with 2 or more messages. AutoUnpack = NO The default is NO, which means that if an existing REP file is found when unpacking a BBS's packet, you will be prompted for its disposition. If YES is specified here, then the replies are automatically unpacked, as if you had answered "KEEP" to the "Replies exist" prompt. BackDropMaxLines = 0 Used to limit the number of lines that are written to the screen during the display of the WELCOME and GOODBYE screens. Some BBS's have huge files, and this slows the reading process. You may limit the line count to 25 for greater speed, or set it to 0 to disable the display of these backdrops completely. BackupOldReplies = Yes If YES is specified, any .REP file that is to be deleted is first copied to a .OLD file. If NO is specified, the .REP files are deleted and no backup is performed. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 70 BeepOnPersonals = Yes Turns the "beep" when a personal message is displayed off and on. Specify YES is you want MR/2 to beep on your personal messages, NO for silent running. Check = Subject This parameter is used only in conjunction with the INI parameter "MakeConference". It is one of the options available in defining a virtual conference. This variable can be used to tell MR/2 which message sections to check when determining if the message contains the search text criteria. If not supplied as part of the virtual conference definition, all parts of the message will be searched. You may limit the areas search by specifying this keyword, followed by one or more of the message section names, separated by commas. Valid message section names are FROM, TO, BODY, ORIGIN and SUBJECT. For example, specifying "FROM,TO" will search for the specified text only in the from and to fields of the message header. See SEARCH.INI for various other examples of how this is used. Colors=1E171EE0 Colors=0F0E0AE0 Yes, this is crude - I'll include something more friendly later. The first two characters describe the "normal" text color for messages, which is shown here as 1E, or Blue background (1) Yellow foreground (E). The second two are the quoted-text colors, 17 is Blue background (1) with a White foreground (7). The third set of 2 numbers are the message header display colors (the From/To/Subject section on top). Finally, the forth pair of numbers is the color combination to use when highlighting searched-for text. This is the only color configuration support at this time. Colors: 0 = Black 1 = Blue 2 = Green 3 = Cyan 4 = Red 5 = Magenta 6 = Brown 7 = White 8 = Gray 9 = Lt Blue A = Lt. Green B = Lt. Cyan C = Lt. Red D = Lt. Magenta E = Yellow F = Intense White I personally have changed to the second example here, which gives a black background with bold-white text, yellow quotes and green header. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 71 Conferences = 93,99,174 This parameter is used only in conjunction with the INI parameter "MakeConference". It is one of the options available in defining a virtual conference. This variable can be used to tell MR/2 which message conferences to check when finding search text criteria. If not supplied as part of the virtual conference definition, or specified as "*", all conferences are searched. You may limit the conferences search by specifying this keyword, followed by one or more of conference numbers, separated by commas. For example, specifying "93,99,174" will search only these specified conferences while building the defined virtual conference. See SEARCH.INI for various other examples of how this is used. CursorSize = 6 Used to control the size of the "normal" cursor when inside the internal editor. Under some higher-line modes, users have reported trouble seeing the cursor. My attempts to enlarge it solved only some of the cases. By default, the cursor size is 1 or 2 scan lines tall in 25 line mode. When switching to 34 line or greater, the cursor size becomes 6 scanlines. The cursor size for "overtype" cursors if 13 scanlines. USE THIS OPTION ONLY IF NECCESSARY. It's meant only to solve some specialized, infrequent problems. DisplayStatus = No If set to YES, MR/2 will display a search progression string at the bottom of the screen. This will appear similar to the normal searching status display. DoorName = RoseMail This parameter is provided as a means of identifying the BBS Door software you use to process your QWK packets. This is useful, for example, if the QWK door does not provide a DOOR.ID file, in which case MR/2 may not address and create door configuration messages (DROP and ADD) properly. It will also benefit cases where you are configuring the door offline after selecting NO PACKET entry. In this case, no DOOR.ID file will be present, and MR/2 will default to QMAIL based configuration messages. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 72 Editor=e Editor=epm Editor=q -e..\qstartup.mac Editor=INTERNAL This is the command MR2 will use when invoking the editor. By default, the system PM editor "e" is used. To use QEdit and pass it a start-up macro (-e parameter), change this line to read: Editor=q -ef:\mr2\qstartup.mac NOTE: when using the PM "E" or "EPM" editors - "word wrap" appears to work great, however, lines are not actually broken with CR/LF's. This causes formatting problems for MR/2. Keep Word Wrap off and include linefeeds by hand. The keyword INTERNAL will instruct MR/2 to use its own built-in editor when you request to reply or create a new message. ExitAtEndOfParameters=Yes This parameter defines what MR/2 does when parameters are provided on the command line (or via "association"). If set to YES, MR/2 exits when all packets listed as command line parameter have been read. If NO, then MR/2 simply returns to the packet selection screen. NOTE: If no parameters are passed on the command line, this option has no effect. See the read.me file for more detail. F2 = D:\Os2util\List c:\phone.nbrs F3 = D:\os2util\q MR2.INI You may attach an OS/2 command to any of the function keys F2 through F10. NOTE that this works only while viewing messages. Also, the current message is always written to the INI-defined reply file. This is to allow the command line utility to access the current message. FileSpec=*.q?? This is the wildcard file specification to use when searching for packets to read. This string is appended to the PacketPath string and all files matching this combination are listed as packets. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 73 FileViewer=List May be used to specify an external file viewer for viewing news, bulletins and file lists. The default is to use the internal viewer. FolderPath=..\ This is the default directory path from which MR/2 will create BBS specific directories for folders. Using this default, MR/2 will build a sub directory (when a folder is to be created) for the current BBS directory off of the MR/2 "home" directory. You may specify any other desired "root" directory for folders, though. GoToLastRead = No If set to YES, will suppress the "do you wish to return to your previous reading position" prompt and jump there automatically. HeaderEditing=Both This controls when the Message header is displayed for editing. Options, relative to actually editing the reply are Before, After or Both. HeaderInQuote=No You may optionally include the message header in a reply file. This is often used with a clever editor "macro" to create sophisticated quoting styles not natively supported by MR/2. You must be sure to remove all traces of the header before saving the message, as MR/2 makes no attempt to identify or remove it. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 74 HideConferences = 2344, 1823, 89 This is a new "helper" function for search/virtual conference entries. It allows conferences, specified by number, to be "hidden" from the conferences w/mail selection screen. You may specify multiple conference numbers on this line, separated by commas. You may also have multiple HideConference lines, the lines are collected into a single internal list and have a cumulative effect. I use this, for example, to hide the dozen or so FORSALE conference I download, as I let my virtual conference builder pick out the message I want to see. I never go into these conference on an individual basis, hence, I need not see them as readable conference. Internet=-1 Use this parameter to declare which conference, if any, handles Internet private mail. For example, PC-Ohio has Internet mail in conference 5. My PC-OHIO.INI file has "Internet=5". Nerd's Nook has no Internet capabilities. My NerdNook.INI file has the line "Internet=-1". The "-1" tells MR/2 that there is no Internet support, and makes sure that the Internet section template is not referenced. KeepMessageMarks=YES If set to YES, MR/2 will track the read/replied/saved status of every message, as well as your current position in the packet. This information is stored as OS/2 extended attributes and will stay attached to the file as it is copied or renamed. When a previously read packet is reopened, you will be asked if you wish to return to you previous position. Answering YES will return you to that spot, responding NO will place you at the conference selection screen. LogReplies = YES Controls the creation and maintenance of a reply log. Set to YES, all replies are logged to an online reply "folder". Set to FULL, copies of the original message preface every reply. Set to NO, no reply logging is performed. The reply folder is maintained in a conference named ReplyLog. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 75 MakeConference = MR/2 Chit Chat This parameter is used to start the definition of a "virtual" or "custom" user-defined conference. This variable is used to tell MR/2 the name of the conference to display in the "Conferences w/Mail" selection list. The name you provide can be quite large, but keeping it a reasonable length (30-40 characters maximum) is suggested. Using the example above, "MR/2 Chit Chat" will be displayed as a readable conference if any messages are found to match the subsequent search criteria, found in the lines immediately following in the INI file. These lines may identify any or all of the INI virtual conference parameters CHECK, CONFERENCES and STRING. See SEARCH.INI for various other examples of how this is used. MessageOrder=Subject May be set to "Subject" or "None" and specifies the reading order of messages. When Subject is chosen, many extra "thread" related keys become available. For instance, the TAB and BACKSPACE key can be used to skip through threads, and the "Q" key will invoke a thread summary menu. MouseClickSpeed = 500 The maximum time, in milliseconds, between mouse clicks for them to be considered "double" clicks. MouseMode = DoubleClick Can be set to DoubleClick (the new default) or SingleClick (the old way). Double click will be required to select any entry from a selection list. In SingleClick mode, a single mouse click will select an entry. DoubleClicking is provided for use with the new "mouse menus". MouseScrollSpeed = 1 Controls the speed of scrolling when you park the mouse on a scroll arrow and hold the left mouse button down. A value of one is the fastest you can get right now, if this is too fast for you, raise this number. This represents the number of milliseconds delay before MR/2 generates a pseudo mouse click for you. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 76 Netmail=-1 Use this parameter to declare which conference, if any, handles Fidonet netmail. For example, PC-Ohio has Fidonet netmail in conference 6. My PC-OHIO.INI file has "Netmail=6". Setting the Netmail parameter to "-1" tells MR/2 that there is no Netmail support, and makes sure that the Netmail section template is not referenced. NewMessageEditor=E This is an optional entry. If you wish to run a different editor for NEW messages, or run the same editor with different startup macros for NEW messages, specify it here. This NEW editor is also used to edit News, Bulletins and Newfile listings. If not specified, the base editor is always used. OldQuoteDetect=YES When set to YES, MR/2 will not place the quote prefix in front of reply-file lines that already are prefixed with quotes. This creates (usually) a much cleaner initial reply file. PacketPath=g:\dl\ This is where MR2 will look for packets to read. A wildcard specification is built from this specification, with the FileSpec string appended to it. PacketRefresh = 60 Controls how often, in seconds, the packet selection screen is updated to reflect changes in the packet list. The default is every 60 seconds. Specify 0 (zero) to suppress the refresh process entirely. PacketSort = ATIME_DDATE This controls the sort order in which packets are shown on the Packet Selection screen. Possible values are: Name sort alphabetically DTime_DDate descending time within descending date (default) ATime_DDate ascending time within descending date. List todays packets first, morning's first, the afternoon's, then evenings. This makes .qwk, .qw0, .qw1 list in order. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 77 PositionOnMatchLine = Yes This causes the line that caused a message to "match" to be aligned at the top of the display - as if a search had been performed. Set this to NO if you wish to see the top of each message in all custom conferences. PostEdit = c:\utility\ss PostEdit = INTERNAL May be used to specify a "pst editing" process for replies. If specified, the reply file name is appended to this line and executed as a command line after a reply file has been edited and saved but before the messages is recorded in the reply file. Allows for user intervention at this point in processing, for such things as external spelling checkers. The example here runs ShareSpell, an MS-DOS shareware spell checker, against all finished replies. NOTE: INTERNAL may be specified. This flags MR/2 to run its internal spelling checker against all finished replies. This allows automatic access to the built-in spelling checker even when using an external editor. PurgeAfterCount = 200 PurgeAfterDays = 60 Control the automatic purging of ReplyLog messages. Set either or both of these values to zero to supress all purging functions. Purging is deactivated by default (no reply log purging will be performed if you don't specifically add these lines to an INI file). Supply a value to PurgeAfterCount to control the maximum number of messages kept in your reply log. The log may from time-to-time contain contain slightly more messages than what's specified, but MR/2 will periodically adjust to this number by deleting the oldest, non-permanent messages. Provide a number of days to PurgeAfterDays to remove reply log messages after the message dates age past this point. MR/2 compares the message date to the system date, and if the message is older that the specified number of days, it will be marked for deletion. NOTE that messages marked as permanent will not be purged. Use the "!" key from within the message viewer to make a reply log message as permanent, protecting it from the automatic purge function. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 78 QuoteBody="%i>",EachLine Describes how MR/2 will quote the lines of the source message when creating a new reply file. The optional %i (which is the only parameter-type variable supported at this time) will be replaced by the message originator's initials. The quote prefix may be placed on EachLine or on the "FirstLine" only (subsequent lines indented). ReassembleSplits = Ask Controls the Prompt when a reply is to be modified and it is found to be one part of a "split" message. If YES is specified, MR/2 will automatically reassemble all the split parts into one single large "whole" for modifications. If NO is specified, MR/2 will only bring in the one individual part for editing. If ASK is specified, MR/2 prompts you for the desired action for each reply you request to modify. RemoveReplyBookmarks = No This flag, if set to YES, sets the last byte of each reply header back to a space before packing the replies. Any MR/2 bookmark information saved with replies is lost, but some networks may use this byte internally and any non-standard value here might cause problems. Leave set to NO unless you determine that there is an MR/2-specific problem with your origin lines or end of your replies. ReplyFile=C:\Reply.Msg Temporary file name used when creating replies. This file can be specified with a full path, making easier to edit it in a separate window. ReplyPath=g:\rep\ Directory where ".Rep" reply packets are built and maintained. ReplyStripTagline=Yes Used only when SmartQuoting is on. If set to YES, the quoting will not include the message's tag/origin lines. Set this to NO to quote the entire message. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 79 SaveFile=..\save.txt This is the default file to which messages are appended when they are "saved" or filed for later reference. Use the "S" key while viewing a message to append it to this file in printable form. NOTE that, if the file specification given contains a wildcard character (e.g., "..\*.txt"), then MR/2 will by default show a pick-list of files matching this wildcard pattern. This happens on the first pick only, the selected name will be the "default" until changed. SavePointerFiles = YES Controls whether or not your packets' message pointer files are saved. Often a QWK packet will contain a bbsname.PTR or bbsname.PNT file. These files contain the message pointers for the current session. If these files are present, the QWK door will accept the uploading of this file in order to reset message pointers to the values recorded within. This allows you to recover message that may have been lost due to a faulty or corrupt downloaded packet. If set to YES, any PTR or PNT file found when a packet is opened is saved in the MR/2 directory (note that MR/2 will *not* overwrite an existing file if it is found to be newer that the packet's file.). SeparaterBar = Yes Specify YES if you wish a horizontal bar to appear between normal and custom conferences when listed for selection. SerialInTagline=Yes This option pertains only to registered copies of MR/2. If you have registered and have the MR2.ID file in the MR/2 home directory, you may set this parameter as desired. Specifying "YES" (the default), tells MR/2 to include your registration serial number in all taglines. Specifying "NO" will suppress the serial number. In either case, registered users will not see the "NR" marking in their tags. ShowBBSID = Top Controls the display of the BBS ID string (Packet name, BBS name and conference name). The default is TOP, which displays this string on the message divider bar. You may specify BOTTOM, which places it in the lower left corner of the status line; removing the helpful hints text from view. Specifying BOTH displays the string in both spots, while NO hides it altogether. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 80 ShowEmpties = No If set to YES, all defined search conferences are listed on the conference selection screen. Empty conferences are shown with message counts of (0). If set to NO, empty "custom" conferences are not listed. ShowReadPercent=Yes Controls the packet select screen look. Setting this to NO will use the old screen look (v1.57 and before) where no percentages and/or counts were displayed. The default is yes, which gives you an expanded window and per-packet statistics. SkipReadMessages=No If set to YES, MR/2 will bypass any messages you've already read. The problem with this option is that, if a conference contains only previously-read messages, then MR/2 will skip right out of that conference - there's no way to get back in. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 81 SmartQuoting=YES SmartQuoting will "prewrap" the reply file that MR/2 generates, compensating for the user initial prefix string. In other words, when you first see the reply, the original sender's text will be rewrapped and quoted so as to fit inside the WrapLinesAtColumn defined elsewhere in MR2.INI. Options are YES, NO or FULL. Full is aggressive, where most of the text is totally rewrapped. NOTE: that existing quoted lines ARE NOT REWRAPPED. SmartWrapping=Yes SmartWrapping will change the logic used by MR/2 when the edited reply file is saved. If set to NO, the old wrapping method is used. When left on, MR/2 will format your NEW text with some intelligence. There is logic to differentiate between a "hard" and "soft" return, and soft returns will be removed if necessary. The old technique would simply insert hard returns to make the line fit within the declared wrap column. The remaining section of the original line would often be short (one or two words) and look out of place, stranded on a line by itself. The new technique attempts to rewrap the text as a whole and eliminate some of the older method's ugly results. Options are YES, NO or FULL. Full is aggressive, where most of the text is totally rewrapped. You may always keep a purposely-short line from triggering a "wrap" by ending it with the tilde "~" character. NOTE: Quoted lines ARE NOT REWRAPPED, these are always considered to be prefixed and terminated by hard returns. SortMasterConferences=Yes The master conference list is stored as found in the BBS's control file. If this parameter is omitted or set to NO, this list is displayed in its default order. If YES is specified here, the list is sorted alphabetically by conference name. NOTE: This is the MASTER conference list (i.e., "Write New" message list). SplitLongReplies=Yes MR/2 will split replies into "multiple" message at somewhere around 92 lines if left at YES. Set to NO, no splitting is performed. ALTERNATIVELY, you may specify a number here, which will be the equivalent of saying "YES", but sets the split at count to whatever you specify. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 82 String = MR/2\MR2\MR-2 This parameter is used only in conjunction with the INI parameter "MakeConference". It is one of the options available in defining a virtual conference. This variable is to tell MR/2 text search criteria you wish to include in the conference. The example above includes any message found to contain the string "MR/2", "MR2" or "MR-2". If not supplied as part of the virtual conference definition, all message will be included. This is handy, when used with the CONFERENCES keyword to specify specific conference numbers, for combining several smaller conferences into a single, easier-to-read conference. See SEARCH.INI for various other examples of how this is used. SuppressVersionInTagline = NO This controls tagline generation for registered users only. Specifying YES here will create taglines without the MR/2 version number. You may also suppress the serial number by setting SerialInTag to NO. These two switches together will cause an MR/2 signature like: " * MR/2 * Tagline goes here" Tagline=@OS2.Tag Tagline=A QWK compatible mail reader for OS/2 This sets the default tagline for MR/2 replies. A single tagline can be "fixed" for all messages (example #2, above), or a file of taglines can be accessed and "rotated" automatically (example #1 - the "@" symbol tells MR/2 to get taglines from the file name following it). With rotating taglines from a file, each message seems to receive a different tagline. A tagline is a humorous or interesting phrase placed at the bottom of each reply. TagMode=RANDOM This sets the tagline file access method. RANDOM will skip around and randomly select the next tagline. SEQUENTIAL will perform a RANDOM seek when MR/2 is first loaded, then move sequentially through the file after that. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 83 TagStyle=PCBoard,Autosense TagStyle=Fido TagStyle=TwoLine This option has been around for a long time; just never documented. This controls the type of tearline and tagline characters used. If set to PCBoard (just now changed to the default), you get the customary three dashed followed by the MR/2 identifier surrounded by hi-end ASCII characters "þ". If set to Fidonet mode, underlines replace the dashes, and "*"'s are used as delimiters. Twoline mode uses a more unique format that allows longer taglines. The keyword AutoSense, when it exists, tells MR/2 to determine if the reply is to a Fidonet-sourced message. If it is, then Fidonet mode is invoked. Otherwise, PC-Board style tags are used. TemplateFile=..\template.tf This is a template file used in the creation of your replies. When you reply to any message, MR/2 will format the reply as defined by this file. This allows for the creation of attribution and signature lines. Variables are available for accessing source message and system data (e.g., FROM and DATE). See the read.me file and/or MR2.doc for more details. ThreadChangeTone=20000,10 May be used to tell MR/2 to make a tone while paging through messages, when the "thread" changes. Uncomment the line and play with the numbers - let me know how useful this is to you :) UnZipper=pkunzip -o These are the commands used to archive and unarchive your message packets. If you use something other than PKZip/UnZip, modify these commands appropriately. V0 = Variable assignment 0 V1 = Variable assignment 1 For use with templates, you can assign or reassign the value of 10 user-defined variables. Set V0 through V9 to any text string you might find handy. These strings can then be placed in any template file line. When a template line using one of these variables is accessed, the variable (e.g., @V0@) will be replaced with the string you have assigned to it. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 84 VideoMode=25 Specifies the number of lines/screen the display will be set to upon entering MR/2. Possibilities are: 25, 28, 34, 40, 43, 50 or 60. You may also toggle through these when on the packet selection screen by pressing ALT-V. WrapLinesAtColumn=80 This keeps lines within reasonable lengths. Using the system "E" editor with word-wrap mode causes some problems. The text appears to wrap on-screen, but MR/2 has no way of knowing where the editor has determined the wrap should be. With this option set, lines are word wrapped at this column, avoiding truncated messages. Zipper=pkzip These are the commands used to archive and unarchive your message packets. If you use something other than PKZip/UnZip, modify these commands appropriately. ----------------------------------------------------------------- ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 85 MR/2 User's Manual - Table of Contents Page 85 CONTACTING THE AUTHOR ===================== You can contact me in a number of ways. Unfortunately, I can't provide a phone number at this time. US Mail: Nick Knight 1823 David Ave. Parma, Ohio 44134 Fido netmail: 1:157/2 to "Nick Knight" Internet: User "Nick Knight", (nick.knight@pcohio.com) Rime: Address private routed mail to "Nick Knight" and place it in Rime's OS/2 or OFFLINE conference. The top line of the message should contain the address "->1869", which is the routing information for the PC-Ohio BBS. Fido Echomail: Find the Fidonet OS2PRODSUPPORT conference. Echomail messages to me in more general conferences are discouraged, as keeping them "on topic" and interesting to the masses would be difficult. I do read OS2, OS2PROG, C_PLUSPLUS and DR DEBUG daily, though. OFFLINE echo also (deals with mail readers), this might be THE place to ask public questions, eh? I recently have acquired access to a host of other networks with OS/2 conferences. These include RIME, SmartNet, Uninet, Intelec, Nanonet, Racenet and some others I can't remember. Direct BBS: Leave a message on the Nerd's Nook BBS (1:157/2) at (216) 356-1772, 356-1872 or 356-1431. I check in here multiple times a day. I will also keep the most recent copy of MR/2 posted here. Other boards (non-local) will get updates at my convenience. Nerd's does support Fidonet file requests (157/2 or 157/3) Optionally, I call into PC-OHIO regularly. Compuserve: I check in here only when I have to. Try mail to my user ID - 76066,1240, although this isn't the best approach. ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 86 REGISTERING MR/2 ================ To register MR/2, simply print out this form, fill it in, and mail it along with a check for $25 US (add $1.00 for orders outside the US and Canada) made out to "Nick Knight". Checks from Canadian banks must include an extra $10 to cover exchange costs (CA $35 total). CHARGE CARDS CAN NOW BE USED! Fill out the "charge it" section below. Send to: Nick Knight 1823 David Ave. Parma, Ohio 44134 Name: _______________________________________________________ Address: _____________________________________________________ _____________________________________________________ City/State: _________________________ Phone (optional) Home: ____________________ Work: ________________ EMail addresses: ____________________________________________ Where did you get your copy of MR/2?: ______________________ What version are you using? ________________ Editor?___________ ********* CHARGE IT to your Visa/Mastercard! ************ We are now participating in the OS/2 Shareware Author Support Program being implemented by the GREATER CHICAGO Online!! BBS. Register online by dialing the BBS at (708) 895-4042 or mail in your charge card information to me. **Prices for charge card use reflect the absense of a 10% cash discount** US orders: $27.50 Non domestic orders: $28.60 Name on card: _______________________________________ Card Number: _______________________________________ Expiration Date: __________ [ ] Mastercard [ ] Visa ----------------------------------------------------------------- MR/2 User's Guide - Version 2.0 Page 87