MSGED TE (TOBI'S EDITION) - DOCUMENTATION OF NEW FEATURES AND CHANGES ===================================================================== Features, Changes and Fixes in the Msged 6.3 branch ----------------------------------------------------------------------- Changes: Features: Fixes: Features, Changes and Fixes in the Msged 6.2 ----------------------------------------------------------------------- Changes: Features: - (by Max Khon) The "curses" display driver (use -DUSE_CURSES when compiling to get this) now supports detection of terminal resize and pseudographics drawing. - "Switch XXLTearline on" by A. Ilchenko. If you set this, you can have a tearline of up to 79 characters (instead of 35), and the Unix version will print system information in the tearline. But be aware that this violates FTSC rules, so using this is discouraged. Fixes: - Fix display problems (uncontrolled scrolling) in cygwin terminal and on FreeBSD console. On some other terminals (e.g. MacOS X Terminal.app) this will cause a new bug: the character in the bottom right corner will have the wrong color. But that's better than Msged not woring in some other terminals at all. - Fix coredump on Unix if "set statbar off" is configured. - Fix coredump if "To" field is null and origin line contains @N token. and "(null)" in origin in same case with @F and @L tokens. By Danial Klimkin. - Made Hudson/Quick code platform independent. This fixes Hudson for Win32, DOS/32 and other platforms. - Fix crash when posting more than 1 message to JAM areas. (Raised version to 6.1.2. This may have side effects on Squish, beware!) - Fix handling of CHARSET kludge and of CHRS kludge without "level". Level 2 is now assumed as default. - Redraw problems in dialog box buttons fixed. - In template text in forwarded and redirected messages, the areatag was filled in incorrectly if the area grouping feature (group separators etc.) was used. Features, Changes and Fixes in Msged 6.0.0 ------------------------------------------ Changes: - The default value of the "Gate" keyword is now "ASK" (see also features). - Brought Msged/TE in line with FSP 1013 (resp. Charset Kludges). Msged now uses and understands the new-style CPxxx CHRS kludges instead of the obsolete "IBMPC" charset kludge. In order to be compatible with other readers, you should definitely add the following line to your config file: CharsetAlias IBMPC CPxxx where xxx should be the codepage that is used most frequently in your country (850 for Western Europe, 437 for America, 866 for Russia). If you want to use the new style CPxx CHRS kludges for output, you must also change your OutputCharset statement like OutputCharset CPxxx but be aware of the fact that, except for perhaps Russian setups, most readers do not yet understand the "CPxxx" charset kludge. If you stick with the old "OutputCharset IBMPC" method, Msged will emit an additional "@CODEPAGE" kludge to denote the codepage that you are using. Please also make sure that you are using the correct translation tables. If you are using a binary release, choose one pair of readmaps.xxx/writmaps.xxx files (the manual, section "advanced topics", subsection "special characters / fsc 0054") aids you in selecting the right one and copy them over the old readmaps.dat/writmaps.dat files, or use the new keywords "Readmap" and "Writemap" to make Msged use these map files. If you are compiling Msged on your own, you should also re-build your readmaps.dat/writmaps.dat files with the makemaps utilities from the upgraded recoding tables in the "maps" directory. You can use the new "Readmap" and "Writemap" configuration keywords to explictly point Msged to the correct readmaps and writmaps files. Use "CP437", "CP850" or "CP866" as argument to makemaps for a OS/2, DOS or Windows PC, depending on your location, or use "LATIN-1", "KOI8-R" or "ISO-5" for a Unix computer. - Changed the semantics of AssumeCharset. Now it also works for mails that do have a charset kludge, but the charset is unknown. This seems to be necessary in Russia especially ("AssumeCharset CP866"). - Reworked the Alt+D (Ctrl+Y) delete line function in the editor. Previously, if you pressed Ctrl+Y and were at the very last line of the message, the line would be killed and the cursor would move up, so that if you pressed Ctrl+Y again, the previous line would also be killed. Now, the last line will only be cleared and the cursor will remain there. So that you cannot accidentally delete text above the line where you started to press Ctrl+Y. If you do not like the new behaviour, add "Switch Carthy Off" to the confi- guration file in order to revert to the old behaviour. Features: - You can now use @o and @w metalines in the template file to define your language's representation of month and day names. - Msged now creates a TZUTC kludge line by default. Use "switch TZUTC off to" disable this if you do not like it or wrong information is put to the kludge. Msged does not yet evaluate TZUTC kludge lines when reading mail. - Character set translation maps for CP865, courtesy of Jesper Soerensen - New switch "DomainMsgid". Turned on by default, but if turned off it will disable printing of the 5D domain string in MSGID lines. You must turn this off if you are using Soupgate for proper reply linking. - Added Fidoconfig parsing code that can work without the fidoconfig library. This keeps the binaries small and insensitive against library interface changes and new keyword introductions. - Group handling has been added. Msged can now read group information from tosser configuration files, sort areas by group, draw separators in the arealist between the groups, or only show areas of a single group at a time in the arealist. Please read the section "Grouping" in the "Advanced Concepts" chapter of the Msged manual for more information. - The Unix version now comes with the "testcons" utility. It is intended mainly for debugging purposes. You will be instructed how to use it when you report a bug concerning Msged not recognising some sort of keystroke. - You can now globally enable input of high ASCII codes for Unix by specifying "EnableSC" without parameters in the configuration file. This is useful if you need to enter cyrillics and the like (previously, you had to list each and ever character that you wanted to enable as parameter, which is good if you only want to enable few, but bad if you must enable a whole alphabet). - The AKA matching alogrithm now also takes into account net and node number. So, if you have two AKAs, 2:1234/5 and 2:789/123, and you write a mail to a member of net 2:789 your 2:789/123 AKA will be used instead of your primary AKA. - The "Gate" keyword has a new parameter "Ask". Instead of globally deciding if you want to zonegate all messages or none, with "Gate Ask" you can now individually select if you want to employ zone gating for each message. - The new keyword "Areadesc" gives you full control on how Msged format the area descriptions in the area list based on the Areafile. You can specify if you want to see only area tags, or only area descriptions, or both, and if you want to uppercase, lowercase, or leave as is any of those strings. See the manual for more information. - New Key "Alt+T" (function "selchs") introduced. It allows you to manually specify the charcter set to use for recoding a mail when reading it. You should only need this in rare occasions (like when trying to read Russian mails that do not have CHRS kludges in a Western setup). Normally, the AssumeCharset keywords should do all work for you. - Added recoding tables for cyrillic codepages (KOI8-RU, CP866, CP1125, ISO 8859-5). Msged is now fully "cyrillified". Please read the manual, section "Special Characters", for information on how to set up Msged in a cyrillic environment. - New keywords "readmap" and "writemap". You can use these to configure the location of the READMAPS.DAT style input recoding map and the WRITMAPS.DAT style export recoding map. Previously, those file names were hardcoded in the executable. Changing the default is useful if you want to write two config files for Msged, one for a Western codedpage and one for a Cyrillic codepage, for example. See the section "Special Characters" in the "Advanced Topics" section of the manual for more information. - The UNIX version now draws pseudographics (instead of the ugly minus plus pipe graphics that was used previously) if the termcap entry suggests that the terminal can do it. Looks much nicer than before. You must add "switch pseudographics on" to your config file to enable this. - JAM Support. Will work only when compiled with smapi 2.0.0 or higher. Many thanks to Fedor Lizunkov and Oliver Grimm! - Character set translate now does not only recode the mail text, but also the message header (from, to, and subject field). This allows for umlauts or cyrillic letters in the header, provided the recipient mail editor also has this feature. - New Switch: DirectList. If you put "Switch DirectList On" into your config file, you will directly drop into the message listing mode when entering a message area, instead of the individual message reading mode like it is the default. - New keyword: Printer. Specifies the printer port (OS/2, DOS, Windows) resp. the lpr options (UNIX) to use for printing (Alt+W, Print). Default is "PRN" on OS/2, DOS and Windows, and an empty string ("lpr -" is called without any options, so that the default queue is used) on UNIX. - Reworked the file import/export interface. You now have a nice menu for selecting the file to read or write, and menus that ask you if you if you want to write the text to file, or to print it or to pipe it, and which export mode should be used. - Support for @FLAGS kludge lines. Msged now will write a FLAGS kludge line if flags that are not supported by the current storage format have to be saved, and it recognises flags in FLAGS kludge lines in messages that it reads. See FSC 0053 for further information. - Support for the following new message flags: kfs, a/s, imm, tfs, lock, cfm, zon, hub Especially kfs is important: If you send file attaches to points of other sysops, you should always set kfs to insure that the message is killed on the remote node's system! (Of course it will also be deleted on your system, so only send non-vital copies if you use kfs ...) - New keyword FreqFlags. As argument to this keyword, you can specify a blank separated list of flags to use for file request messages. The default value is DIR K/S, if you do not override it by using the FreqFlags keywords. Msged will also always set the FRQ flag and any flags that are particular to the area that the file reqest is generated in (usually PVT LOC). Example: FreqFlags CRA K/S - If you want to insert a Reply-To: line into gated e-mail messages, you can now put UUCPReplyTo your@e.mail into msged.cfg. Msged will then insert the line Reply-To: your@e.mail into every mail that also has a "To:" line, i.E. in every mail that is being sent through your UUCP gate. Note that some gateway software supports the Reply-To: string (like Fidogate), while others doesn't. - Msged now supports the Husky project "fidoconfig" style configuration file. If Msged has been compiled with -DUSE_FIDOCONFIG, you can use the following lines in the configuration file Areafile Fidoconfig will import all message areas that are defined in the config file. Areafile Fidoconfig Settings will import all other settings (AKAs etc.) from the config file. Areafile Fidoconfig Both will import both areas and settings from the file. In order to get Msged up and running, if you have libfidoconfig installed and a proper fidoconfig config file, the following ~/.msged file will be sufficient: Areafileflags 8u Areafile Fidoconfig Both After that, you can add any private setttings you would like to have, but the above two lines are enough to get a working Msged,. - Unix: New Switch "AdaptiveCase". If you set "Switch Adaptivecase On" at the beginning of your configuration file, MsgEd will treat all file names case insensitively (i.E. it before trying to open any file, it will look into the directory and determine how it is spelled). You should set this switch to On if you are using MsgEd together with a message base or nodelist which is mounted from an DOSish (OS/2, Windows, DOS) platform which has a case insensitive file system. Those message bases usually use lower and upper case in a wild mix (i.E. both .msg and .MSG and .Msg files, etc. pp.). Th adaptivecase switch allows MsgEd to cope with such directories. If you are sure that you do not have case sensitivity problems, probably because you are using Unix software exclusively, you can set this switch to Off. This will gain you a little performance improvement and about 200K memory. (These 200K are used by the AdaptiveCase feature as a file system cache, because otherwise it would be too slow). - Unix: MsgEd TE is now able to correctly recognize the terminal size. It is also able to recoginze when the size of the xterm it is running in is changed and adapts itself accordingly. - MsgEd is now able to read the mail area configuration from GEcho 1.20. Use it like "AreaFile GEcho c:\mailbox\gecho". The parameter to "AreaFile GEcho" designates the *directory name* where GEcho is installed. Inside this directory, the files "SETUP.GE" and "AREAFILE.GE" must exist. Thanks to Jesper Soerensen for contributing this code. - The routines for parsing fastecho.cfg have been made independent of structure layout issues, i.E. they now also work on Non-Intel hardware like PPC (e.g. RS/6000 with AIX) or Sparc. - MsgEd TE will now turn on the Rvd flag for any mail which is addressed to *any* of your FTN addresses and *any* of the configured user names. If you want to restore the old behaviour (i.E. the Rvd flag is only turned on if the destination name is the currently ACTIVE user name, which can be selected by pressing Ctrl+U AND the Rvd flag is only turned on if the destination address is the default address of the current mail area, you must add "Switch ReceiveAllNames Off" and "Switch ReceiveAllAddresses Off" to the configuration file. Fixes: - Fixed Msged crashes if the amount of kludges grew larger than BUFLEN (Msged will now not crash, but simply cut off the rest of the kludge lines), and raised BUFLEN to 16K for all platforms except DOS (4K). - Fixed a bug which caused crashes with Jam, while on Squish (an probably also other formats), it could lead to the last several characters of a message being cut off. This was a problem especially because it destroyed the origin (and hence the sender AKA info) in echomails. Fortunately, it only happend when you were typing umlauts and had instructed Msged to convert those to low-ascii. - When Msged asked if you want to send a mail via the Zone Gate, Msged then always used the Zone Gate, no matter if you answered "Yes" or "No". - Fixed crashes when replying to a message with long subject (buffer was three bytes too short). - You can now also do "cc:" and "xc:" crossposts when you edit a mail, not only when you have started to write a new mail. However be aware of the fact that any old crossposts that might already have been generated will not be deleted, of course. - Fix: Defining an UUCP gate before defining at least one own address causes a core dump. - The codepage 850 recoding tables now properly recognise the Euro currency sign (it will now be displayed as EU if the local terminal cannot display the Euro currency sign). - Fixed the manual WRT lastread pointer handling. It contained some blatantly wrong information about this topic. - Bugfixes for lastread pointer handling. The code should be really idiot-proof now. - "xc:" crossposting now also works when editing a message, not only when creating a new message. - Fixes for treatment of High-ASCII characters, in message list and on text import/export. - The message body length that Msged was reporting to the Squish API was longer than necessary. This caused space waste and could also confuse other programs that read from the Squish base (though no real-life programs that have problems with this are known to me). - Fixed the "PrivateNet" feature. - Fixed the SoftCRXlat translation method to work on the transport charset instead of the local charset. This affects specifically the problem with the cyrillic big en ("H"). Please refer to the entry for the keyword "SoftCRXlat" in the updated Msged manual. - The OS/2 version now also allows entry of the "cyrillic small er" letter (scan code 0xe0) in codepage 866. - Msged can now handle TAB characters in text files when importing them. - Fixed crashes on importing text files that contained tabulator characters. - Reduced the memory requirements of a Borland compiled DOS executable considerably in case of a lot of "Alias" definitions. Again the realloc() problem. - Fixed display of kludge character (001) on Linux. - The last line of the screen is now usable in the Message Editor also when the Status Bar is switched off. - Fixed the handling of FIDOUSER.LST in case of user entries that did not contain a ",", like "Echolist". - Fixed a bug that caused Msged to sometimes trash lastread pointers in exactly one (mostly, but not necessarily the first *.MSG area) message area when exiting. - If you used "scan" to do an area scan on startup, the scan could not be interrupted if you also used the autostart macro. - The autostart macro (and probably also other macro functions) did not work properly. - If you quote a mail from a person like Bill 'billy' Gates, the quote initals will be BbG now (instead of B'G). mtt - Fixed bugs in the routine that allowed for redefinition of areas (i.E. manual redefition of files that previously have been imported from an areafile - sometimes it simply would not work). - Backslashes could not be used in the template files. Fixed. (You only need to enter a SINGLE backslash to produce one!). - Segmenatation faults and even worse errors fixed when Msged was started in a very small terminal (e.g. 8x8). - Typing umlauts did not work any more after an OS shell (Alt+J) has been performed. - If a mail in an area with the "u" flag contained multiple "from:"-lines (which happens if an internet user forwards mail from another internet user), the from sender address (i.E. the address from the last from: line instead of the address from the first from: line) was displayed. - MsgEd could not read AREAS.BBS files that contained references to Hudson / QuickBBS style message areas. (Core dump on OS/2 and Linux). - Fixed a cosmetical bug in conjunction with the "CC:" feature (there was no line break inserted between the "crossposted to ..." text and the message text). - Fixed a serious bug in the zone gating code, which caused totally misadressed netmail if you had switched zonegating on and wrote netmail in other zones than the primary one of the respective netmail area. - AKA matching for echomail areas deactivated Features, Changes and Fixes in MsgEd TE 05 ------------------------------------------ Changes: - ATTENTION!!! If you want to use the gateway addressing feature (automatic recognition of fidogate-style to:- and from:-lines), that had been enabled by default in previous versions of MsgEd TE, you now must put the following line into your configuration file: Areafileflags u (If you are upgrading from some other MsgEd version than MsgEd TE 04, you will also have to do quite some other changes. Read the manual for this.) - The "defaultnewsflag" and "defaultuucpflag" switches that had been introduced with MsgEd TE have been removed. You can now control these features with the Areafileflags keyword (see below). - The UNIX version now uses ~/.msged as default configiuration file. Features: - Added character set translation tables for the CP850 charset, which is the default character set on national German editions of OS/2, Windows and DOS. (Most users change it to 437, though, which is equivalent to the IBMPC charset kludge). - In the Unix version, you can now press Ctrl+L to redraw the screen (in case it got corrupted by a syslogd message or similar). - If you set "Switch Lowercase On", MsgEd TE will convert all filenames that it reads from the configuration file or from an areafile to lower case before, reading from, writing to or creating any file. This is helpful if you are using a case sensitive filesystem ... - Conditionals: You can use IF, ELSE, ELIF, ELSEIF and ENDIF to skip or only include certain parts of the configurations based on the values of environment variables or on the operating system. See the section about Conditionals in the documentation for a full explanation. Quick usage example: IF OS2 Origin "OS/2 is great!" ELIF UNIX Origin "Unix - a professional's choice!" IF TERM=linux ;special switch for the Linux system console Switch BS127 On ENDIF ELIF W32 Origin "My employer forces me to use Windows ..." ELSE Origin "Good old DOS ..." ENDIF - In the message list mode, you can now press '+' to select all messages and '-' to deselect all messages of that area. - Changes to the behaviour of Alt+M in message listing mode when multiple messages are selected: MsgEd will now ask you where to move, copy or forward the message to *only* *once* and then move all marked message to the same location. This allows you to easily move the large numbers of mail (e.g. a whole folder) from one location to another. Every mesage that has been processed will be deselected, so that if you interrupt the moving process for some reason, you can easily continue it afterwards because only those message that have not yet been processed will still be selected. - New switch: SquishLock. If you add "Switch SquishLock On" to your configuration file, MsgEd TE will lock every message area that is entered (and of course unlock it when it is left). This will result in a considerable speed increase when browsing message areas, but it has the drawback, that the tosser will not be able to toss to an message area as long as it is open in MsgEd TE. So if you are accustomed to leaving MsgEd TE open even when going away, you should better leave this switch off. - Note that this switch has nothing to do with data integrity concerns. MsgEd will of course lock the Squish Message Base when writing a message in order to insure data integrity even if the SquishLock switch is turned off. - The default value of the SquishLock switch is Off (in contrast to the mainstream MsgEd 4.30, where it is on by default). - New keyword: AssumeCharset. You can specify a character set that should be assumed if a mail with special characters in it is read that does not have a CHRS kludge. The most reasonable use of this keyword is to specify "AssumeCharset IBMPC", because 98% of the mails with special characters but without charset kludge are written in the IBMPC charset ... If you do not use this keyword to assume a default character set, all special characters in mails without charset kludge will be replaced by question marks. - Home directories: You can now use the ~/ in filenames in the config file or interactivley; it will be replaced by your home directory. (Under non- UNIX systems, this will be taken from the HOME environment variable). Unter UNIX, you can also use ~username/ which will be replaced by the home directory of the user named "username". - Piping mail text: When exporting a file (Alt+W), you can prefix the file name with a pipe sign (|). The file name will then be treated as a program (optionally with parameters). This program will be started and its standard input will be the text of the mail. For example, in order to print a mail under Unix, press Alt+W and then type |lpr,t The ",t" tells MsgEd to line-wrap the message. Note that you can't use commands that need a comma as argument because of that. I wanted to keep kompatible with the old Alt+W feature. Piping does not work in the 16 bit DOS version (due to lack of a popen C library routine). - Origin shuffling: You can now repeat the Origin keyword as often as desired. MsgEd will select a random origin line each time when you write a message. - The echotoss.log file is now updated immediately after you have written a message. (Previously, it was only update when MsgEd was terminated). This feature is imported from MsgEd 4.20 Beta 3, thanks to Andrew Clarke. - Certain features of MsgEd TE need a flag that has to be set for each area in order to enable that feature. For example, in order to be able to write mails with umlauts, you must set the 8 flag for each area that should have umlauts by defining the area manually in msged.cfg. Now, you can also set flags globally for all areas that have been imported from an Areafile (tosser configuration) by a command like the following: Areafileflags 8u This example sets the 8 and u flags for all areas imported from a tosser configuration file. (Then, of course, if you have an area that should not have these flags, you again have to define it manually in msged.cfg). - The message size info box (Alt+B while writing a message) does now show the quote ratio in addition to the absolute message size. - You can now use macro tokens in the origin line. They will be expanded to their value when the message is saved. The following macros work just the same as they do in MsgEd 4.30: @N = full name of message receiver @F = first name of message receiver @L = last name of message receiver @Y = full name of message author @D = complete message date (as for example: 24 Dec 97) @DD = message date, day number (as for example: 24) @DM = message date, month (as for example: Dec) @DY = message date, 2 digit year (as for example: 97) @D4 = message date, 4 digit year (as for example: 1997) @DC = message date, century (as for example: 20) @T = complete message time (as for example: 12:30:24) @S = message subject @A = area tag @I = message size @Q = quote ratio The following macros do only work in MsgEd TE: @DW = message date, week day (as for example: Mon) @@ = a single @ Note that MsgEd TE will always truncate the origin line to 79 characters. Thanks to Kim Lykkegaard for this code. - When doing a nodelist lookup by sysop name, you will now be presented a selectbox listing all node numbers that match this name. Previously, MsgEd simply selected an arbitrary node numer in this case. This feature does only work if you have a FIDOUSER.LST file. You must configure MsgEd to use the user list file using the UserList keyword (for example: "UserList e:\nodelist\fidouser.lst"). Thanks to Kim Lykkegaard for the code that I partly reused to implement this feature. - For nodelist lookups by sysop name, you can now either type in the complete name of the sysop you are looking for, or, if your are using a FIDOUSER.LST file (see above), you can also only type in the first few characters of his *last* name. For instance, if you just type "er", you will be shown a list of all sysops whose last name starts with "er". - Added a comfortable way to request files directly when reading file announcement mails. It works as follows: First, you have to define which area file announcement mails should be created in. This should be your netmail area. Use the "FreqArea" keyword, followed by the area tag of the area in question. For instance, Fastecho users will always want to set "FreqArea NETMAIL". Then, when reading a file announcement mail, press Ctrl+F. You will be shown a list of all files that are announced in that mail. Select the ones that you want to request by pressing space, and then press enter. The file request mail will be created automatically. - Thanks to Kim Lykkegaard for this code. - New Editor command "emacskill". This command is pre-bound on the Ctrl+K key and will behave just like the Emacs Ctrl+K: It will delete all characters in the current line after the current cursor position. In contrast to deleol, if the line is already empty, it will remove the line (while deleol leaves an empty line as is). - New Keyword "EnableSC". This is only of interest for the Unix version. Give this keyword all the national special characters as arguments that you want to be able to type inside MsgEd. (The reason for this is that this is the only way for MsgEd to know if an ASCII code with its eighth bit turned on should be interpreted as Meta-(Alt-)Keystroke-Combination or as national special character. Usage example: "EnableSC ᎙". Note that enabling national special characters will probably disable some Alt-Keycombinations. See the notes on Unix in the documentation for further information. - Ported MsgEd to Unix. - Updated MsgEd TE to again compile for the NT and DOS/386 platforms. Fixes: - When forwarding a netmail to an echomail area, the "to" field was not cleared, which could lead to strange results in echomail areas (wrong sender AKAs, even crashes, etc). - Reworked the way error messages are printed on startup a little bit. - Fixed segmentation violation when quoting mails that already contain quotes where the quote character ('>') is in the very first column. - The Windows NT version now handles umlauts correctly in all cases. - Origin lines that contained parentheses in the origin text did not work. - The online help (F1, Alt+H) is now also available in the area list screen (which is the first screen that a new user sees ...) and the file request menu. - Pressing Alt+H did not always show the help screen in the 16 bit DOS version. - Fix for NT version: Ctrl+C does no longer kill MsgEd. - Tons of bugfixes in the special version of the Squish Message API that is used to build MsgEd TE. I can't list them all (particularly, the OS/2 executable delivered with TE 04 did NOT lock the message base correctly when writing mail, which could potentially screw up the area) - simply upgrade older versions immediately, it is worth it. - When forwarding a mail into an echomail area, sometimes a nodelist lookup was made on the receiver's name (which does not make sense because most of the time you enter "All" there). This bug was introduced by MsgEd TE 03. - When moving and copying mail, kludge lines were not preserved if the ShowNotes switch was turned off. Now they are always preserved. - When moving and copying mail, umlauts were wrong in the copied / moved mail and the charset kludge was missing. - Changing (Alt+C) a mail that came in through an internet gateway (or had a From: line in it for other reasons) resulted in a segmentation violation. - Fixed some bugs in the origin handling code that could lead to messages with invalid origin lines. - MsgEd TE was generating "To:"-lines in the first line of a message even in echomail areas. This was nonsense (no Gateway is able to understand that, and anyway, what should it be translated to on the RFC side ...). This also fixes the problem that sometimes the sender's AKA was switched to an AKA in his gateway's zone in echomail areas where that zone was unknown. - Fix for NT version: AltGr - keys (German keyboard) are now working. - When selecting something in a SelBox, like for example selecting which reply to jump to when pressing Ctrl+Left, and some other cases, garbage was printed to the upper left corner of the screen. - The deleol editor function behaved very strange (if you typed something after issueing deleol, the next line would wrap up to the current one). - MsgEd crashed when trying to read a mail with more than 80 consecutive whitespace characters in it. Fixed. Features, Changes and Fixes in MsgEd TE 04 ------------------------------------------ New Features: - "Origin talk". In some fido areas, it has become usage to do conversion via tearline and origin line texts. This requires a possibility to enter origin lines while writing a message easily. MsgEd now has two stages of support for this: a) When changing an existing message, any changes you make to the origin and tear line will be kept. (Previously, they would be discarded). b) If you wish to be able to write custom texts in the orign line when you enter a new message, you should add the new switches Switch EditTearLines On Switch EditOriginLines On to msged. This will lead to a default Tearline and a default Originline being appended to the message template whenever you start writing a new message or replying to an existing message. - Instead of pressing * to rescan all or # to rescan only unscanned areas, you now can also press Alt+T (all) and Alt+S (unscanned) just like it is in TimEd. - Merged in the changes from MsgEd 4.10 to MsgEd 4.20 Beta 2. This provides the following new features (at least they are new if you were not already using 4.20 Beta 2 ...). Most of them are untested by me. I decided not to merge in 4.20 Beta 3 because it is reported to be buggy, so I'll wait until there is a newer, fixed mainstream version. - New switches from 4.20 Beta 2 that are now supported by MsgEd TE as well: - "switch showorigins on" will enable display of origin lines even if notes are not displayed. - "switch showtearlines on" will enable display of tearlines even if notes are not displayed. In order to get the same behaviour that was hardcoded into MsgEd TE 03, you should switch both of these switches on. - "switch tearlines off" will disable the use of tear lines. - "switch originlines off" will disable the use of origin lines (which would violate some FSCs, so don't use it). - New keyword "Scan". If it is present in the msged.cfg, MsgEd will automatically scan all areas on startup. - New keyword "MountDir". This is useful if you mount your messagebase, which resides on an OS/2 or Windows machine, into a unix filesystem on Linux or FreeBSD (or any other Unix you get MsgEd to compile on). If, for example, the e:\mailbox\msgbase directory is mounted on Unix below the /warpserver/msgbase mount point, you would use "MountDir /warpserver/msgbase e:\mailbox\msgbase". MsgEd will then properly translate all path names it needs to use, change all backslashes to forward slashes, etc. So you can even parse a squish.cfg that resides on the OS/2 drive without reworking it's path values. - New keyword "SoftCrXlat". You can either set "SoftCrXlat 0" odr "SoftCrXlat 1". I did not yet figure out what this is for. It has something to do with a character with ASCI-Code 0x8D. If you figure out what it is for, please tell me. - New keyword "AreaExcl". You can specify an area name wildcard patern of areaes that should NOT be shown in MsgEd even though they might be specified in an areafile or squish.cfg. Example: "AreaExcl ALT.BINARIES.*" - Several improvements of the swapping algorithm for DOS. I did not test them, though. - Source code is cleaned up. All prototypes have been moved to header files. - Source code should now compile with djgpp. - A method of locking the Squish base whil MsgEd is accessing it has been implemented. However, on my system this immediately leads to Message Base corruption whenever writing a message. Therefore, I do compile the executables that I deliver with -DNO_SQUISH_LOCKING, and I suggest you do the same for your system until I have debugged this. - As the MsgEd TE development and the "mainstream" have diverged quite a bit, I decided to drop the version number from my development stream. This will simply be "MsgEd TE" (Tobi's Edition), and the beta releases will be numbered sequencially. So this version is "MsgEd TE 04". Fixes: - Fixed bounds checking and pointer errors (that could probably lead to stack or heap corruption and other sorts of undefined behaviour) that occured in the following situations: - viewing a Fido *.MSG folder that was empty - when replying to a message - when using Hudson/QuickBBS style areas - starting to write a message, but then deciding to cancel it while editing the header - editing a message that has zero-length lines in it - quoting a message (don't know the exact condition to reproduce it) - Fixed ansi.c routines. (They are currently only relevant for the Unix VT220 version, but could be used to make an OS/2 BBS door out of MsgEd, for example). The color translation was broken, and the performance was very slow. Also, keyboard input did not work on FreeBSD (and probably not on any other system), because a clearerr(stdin) call after an unsuccessful keyboard call had been forgotten. See unix.txt for further info. - Fixed broken file permissions in the Unix version. Also a lot of other fixes to make it compile and work on Unix. See unix.txt for further info. - Fixed some (hopefully all) year 2000 problems. They were many, and I would like to stress the fact that even the "mainstream" MsgEd 4.20 Beta 2 also is not Y2K compliant. - My EMX compiled MsgEd gave a segmentation violation (core dumped, program stop) about twice a week, but ran fine the rest of the time. I finally found and fixed the problem: os2scr.c was passing 32 bit pointers to 16 bit OS/2 API functions, which worked most of the time, but not always. - Reduced the memory requirements of a Borland compiled DOS executable by about 250K (on my system). Seems that Borland's realloc() is not very intelligent ... Should also visibly reduce memory requirements with all other compilers. Now that I can execute the DOS version on my system again, I will also provide 16 Bit DOS executables in the archive, although I'm not very enthusiastic about DOS-based platforms ... - Removed the tracing code that was introduced in TE 03 Fixes in MsgEd 4.10 TE 03 ------------------------- Fixes: - Fixed segmentation violation when parsing a squish.cfg file. This bug was not present in original MsgEd, but introduced with TE 02. - Don't do a nodelist lookup when replying to a message, because we assume that the original sender whishes to get answers to the address that he is using as from:-Address. (Previously, if there were for instance two different persons with the same name in the node-/pointlists, the reply could even have been addressed to the wrong person!!!) - Fixed display of long area names in message reading mode - Introduced some temporary tracing facility Features, Changes and fixes in MsgEd 4.10 TE 02 ----------------------------------------------- New Features: - Changed behaviour of area scan. If the process of scanning areas (by pressing *) is aborted (by pressing ESC), those areas that have not yet been scanned will (as it should always have been) still be listed with dashes instead of message numbers. (Previously, there was no way to know if an area contained no messages or if it was just unscanned). In order to continue an interrupted scan process, you can press #. This will only scan those areas that are presently marked as unscanned, while pressing * would mark all areas as unscanned and then restart the scan process from beginning. The feature of continuing an interrupted scan is very useful if you have a large messagebase. - You can now set "UUCPNAME *" in msged.cfg. This means that your Internet Gateway does not require the "UUCP" name in the name field, but allows a real user name there. This will make even nicer messages with real name information. - Added real name features for internet addresses ("tobi@bland.fido.de (Tobias Ernst)"). This prevents the stupid "Hello UUCP" when replying to a message that has real name information. - Support for Charset Kludges according to FSC 0054. Put a READMAPS.DAT and WRITMAPS.DAT tailored to your machine into the startup directory. This will enable reading umlauts and other special characters that are written in charsets different to the one from your machine. The files that are provided within this archive are tailored for an OS/2 or DOS machine. For an Amiga or Unix machine you will probably need different ones, because these machines natively use Latin-1 instead of IBMPC. If you want to write special characters, add "OutputCharset IBMPC" or "OutputCharset LATIN-1" or "OutputCharset MAC" to your msged.cfg (this does not have to match your native charset, just select the one you "like" most) and redefine all areas that are allowed to use special characters in msged.cfg, giving them the new '8' flag (for eight bits). If you redefine an area that is also in squish.cfg or fastecho.cfg, do not forget to also add the "u" flag if you want gateway support. Example: Squish eu8 "ALLGEMEINES.LOK" r:\msgbase\allglok ALLGEMEINES.LOK 2:2476/418.0 Read the FSC for further information on the layout of READMAPS.DAT and WRITEMAPS.DAT and the principle of CHRS klduges. - Origin line and Tearline are always displayed. This change was incorporated in order to be able to "set seen-bys off" in msged.cfg without loosing the orign and tear lines. If you like the old behaviour better, you have to #define NO_PROTECT_TEARLINE_AND_ORIGIN and recompile readmail.c. (NOTE: This change is historical. I have removed it in TE 04, because I have adapted the way MsgEd 4.20 Beta 2 is doing it). - Dramatically improved the initial scanning of a fastecho.cfg file. On my system, it reduced msged startup time from 1 minute to 5 seconds. (OK, not everyone has 500+ area entries in the fastecho.cfg, but the algorithm used previously was a nightmare anyway). - New keyword: "SortAreas ". You can specify that the areas in the area list shall be sorted. This is very useful when importing a fastecho.cfg, because the fastecho.cfg often has areas in a chaotic sequence. (This might also be true for a squish.cfg handled by a brain dead areafix, or a squish.cfg maintained by a brain dead user ). is an arbitrary combination of the following characters. The character representing the most significant criterium should come leftmost: N: Sort Netmail Areas on top, then Local Areas, then Echo Areas. T: Sort by Area Tag. D: Sort by Area Description G: Sort by Group. Example: SortAreas NDG Notes: 1) N is always useful and should therefore be always used. ;-) 2) The meanings of D and T may vary depending on which area file you imported the area from. T is the true area tag, while D is what you actually see on screen. You will usually wish to use D, because ordering by what you see seems to be more logical than ordering by what you don't see ;-) 3) G does only work with areas imported from a fastecho.cfg. All other areas have a group value of 0. Note that redefining an area in msged.cfg that also exists in fastecho.cfg does NOT change the group number. - Better (dynamic) utilization of display width in the area list. - Better look of area list entries when using a fastecho.cfg. Areas in a fastecho.cfg often do not have a meaningful description, so the de- scription is now always prefixed with the area tag. - Added parsing of %ENVIRONMENT%-Variables when parsing msged.cfg, squish.cfg, and the path entries in fastecho.cfg. So if you use SET MAILBOXDRIVE=E: somewhere in your startup.cmd resp. autoexec.bat and then use something like NodePath %MAILBOXDRIVE%\nodelist in msged.cfg, this line will expand to NodePath E:\nodelist before being parsed. The advantage of this method is if you wish to use MsgEd on different computers in a LAN that access the same messagebase, but have different drive letter mappings, you can use one config file with metavariables, and set the variable on each machine to the correct value for this machine. Fixes: - Fixed a memory leak (~30 bytes per viewing a message with AREA kludge) - Fixed UUCP gateway support for carbon copies (all flavours), and lots of other fixes to UUCP gateway support. It should now be possible to really seamlessly use the gateway. Works even better than TimEd and all other gateway-supporting editor I have seen so far, provided that your gateway is fully Gatebau-compliant (like Fidogate is). - Fixed a bug in the undelete routine: Inserting a line as the very first line of the message using undelete did not work as expected (the undeleted line was drawn on-screen while editing, but not saved to disk). Features, Changes and fixes in MsgEd 4.10 TE 01 ----------------------------------------------- New Features: - AKA Matching. If destination and origin zone of a netmail message do not match, and MsgEd know about a different AKA of the user that matches with the destination zone, this AKA will be used instead. Special thanks to Sascha Hagner (sascha@monkey.sub.org) for this feature. - Reworked the UUCP gateway interface. MsgEd now recognises all variations of gated messages as they are created by FidoGate 4.2.8, namedly: From: User Name From: email@address (User Name) From: email@address MsgEd now also supports the Reply-To: Line. It takes precedence over the From: line. Drawback is that you don't see the original sender address unless you take a look at the kludgelines. Advantage is that an automated reply with Alt+Q will be correctly addressed. In order to use a fidonet gateway, simply define "UUCPNAME UUCP" and "UUCP " in msged.cfg, and then, if you whish to write an email, enter the email address in the user name field. MsgEd will then NOT prompt you for a node number, but silently addresss it to the UUCP node, and add the "To:"-Line to the message body. You will only see this "To:"-Line if you have turned the kludges-display on (though it actually isn't a kludge line). - The MsgEd gateway interface does only work if the uucp flag has been set for a defined area. I found out that you can safely turn on the uccp flag for all areas, netmail or echomail, even if they are FTN-only areas. Problem is that you can't set the uucp flag for areas imported from squish.cfg. I therefore added the following two switches: "DefaultUUCPFlag" and "DefaultNewsFlag". They control if the uucp or news flag should be set for areas imported from a squish.cfg or fastecho.cfg file. By default, "DefaultUUCPFlag" is turned on and "DefaultNewsFlag" is turned off, so that all areas will benefit from the MsgEd gateway interface. If you want to turn this off, so that MsgEd behaves like it did until 4.10, you have to add switch defaultnewsflag off switch defaultuucpflag off into your config file. - Please note that for maximum comfort when communicating via a FidoGate internet gateway, your message reader should support the @CHRS kludge, as all messages from the gateway come with a Latin charset which can't be displayed on OS/2 or DOS without translation. You need at lest MsgEd 4.10 TE 02 and valid READMAPS.DAT/WRITMAPS.DAT files for this to work. - Some minor changes in the look of cc'ed messages. Added "hc:" as a synonym for "bc:". (Hidden Copy / Bild CC). Thanks to Sascha Hagner for this. - Changed the EMX makefile to use emxomfar in order to circumvent a problem with too many command line parameters when binding the executable.