MSGED TE (TOBI'S EDITION) 6.0 - DOCUMENTATION OF NEW FEATURES AND CHANGES
=========================================================================

Features, Changes and Fixes in Msged TE 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 <criteria>".  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 <g>).
  <criteria> 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 <email@address>
    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 <nodenumber_of_gateway>" 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.
