home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / tim110p.zip / WHATSNEW.110 < prev    next >
Text File  |  1995-12-02  |  55KB  |  1,421 lines

  1.   ====================================================
  2.  
  3.        Changes made between 1.10.g2 and 1.10.pr:
  4.  
  5.   ====================================================
  6.  
  7.  
  8. * Fixed 'followup' messages for msgs addressed to an internet address
  9.  
  10. * Details view in list mode showed strange attributes
  11.  
  12. * List mode tried to show destination netmail address even in echomail
  13.  
  14. * Using reply/turboreply in a read-only area, during a personal mailscan,
  15.   with a message that contained an AREA: kludge resulted in a reply to the
  16.   NEXT personal message, instead of the current one.
  17.  
  18. * The 16 bit DOS version had problems with high baudrates (like 64000) in a
  19.   compiled V7 nodelist (FastV7).
  20.  
  21. (1.10 beta 11)
  22.  
  23. * There was an error in the internal cache used for character translation,
  24.   most evident when 'AssumeCharset' or 'DefaultInput' is used. This would
  25.   cause the incorrect charset to be used.
  26.  
  27. * Fixed incorrect addresses shown in 'forward' header.
  28.  
  29. * Copying/Moving marked message lead to weird character translations.
  30.  
  31. * TimEd always assumed that a charset that was mentioned in a 'CHARSET' (as
  32.   opposed to CHRS:) kludge was a level 2 charset, if there was no level
  33.   mentioned after the charset name. It can now be either level 1 or 2,
  34.   timEd will first see if a level 1 charset is available for that name, and
  35.   then if a level 2 charset exists.
  36.  
  37. * The '386', 'OS2' and 'DOS' keywords can now also be used in timkeys.cfg
  38.   (and work just like they do in timEd.cfg).
  39.  
  40.  
  41.  
  42. 1.10.g2
  43. -------
  44.  
  45.  
  46. * Added Bruno Olsen (Mountain BBS, 2:236/42) to TIMED.REG as regsite in
  47.   Danmark.
  48.  
  49.  
  50. * When coming from the internal editor, the 'SaveMenu' (where you can
  51.   toggle options like spellchecking, signing and encrypting of messages)
  52.   now has the option 'quit this menu'. When you choose that option, you can
  53.   go back to editing the message.
  54.   This is not possible when coming from the external editor.
  55.  
  56.  
  57. * Improved handling of internet addresses in CC:'s.
  58.  
  59.  
  60. * The IBM -> ASCII character map had a small error.
  61.  
  62.  
  63. 1.10 beta 10
  64. ------------
  65.  
  66. * TimEd sometimes 'ate' TO: lines (for example when more than one of those
  67.   was present in a message, and then only showed the last one) in messages
  68.   addressed to internet without showing the found address in the header.
  69.  
  70.  
  71. * Minor cosmetic changes to the forward command.
  72.  
  73.  
  74. * Minor changes to wordwrapping code.
  75.  
  76.  
  77. * Changed behaviour of <TAB> in internal editor in 'overwrite' mode.
  78.  
  79.  
  80. * TimEd could choke if a spellchecker (or PGP) produced 'junk', that then
  81.   had to be converted to a message by timEd.
  82.  
  83.  
  84. * There's a new command, called READchangecharset.
  85.  
  86.   This function will show you a popup window with all charsets available
  87.   for reading messages. Regardless of the setting of 'DefaultInput' or
  88.   'AssumeCharset', this will let timEd use a specific charset of your
  89.   choice. (It will not overrule a CHRS: kludge in a message, though).
  90.  
  91.   After a charset is selected, timEd will re-read the current message and
  92.   use the translation you just selected. It can be used on messages that
  93.   are written using a specific charset, but do not contain a CHRS: kludge.
  94.   In you didn't use 'AssumeCharset' for that area (or that charset is not
  95.   correct), you can pick the correct charset with this function.
  96.  
  97.  
  98. * New keyword in timEd.cfg:
  99.  
  100.   LevelOneOutput <charset> [<charset> [<charset>]]
  101.  
  102.   This indicates that a certain character translation map (as used for the
  103.   'charset support', FSC-0054) produces level 1 output.
  104.  
  105.   What this means may not be clear when you haven't read FSC-0054. I'll
  106.   give a short explanation for those who have, if you haven't, what is
  107.   written below is probably not clear. It may be better to forget about it
  108.   then :-)
  109.  
  110.   Level 2 only concerns itself with translation of charcter codes > 127,
  111.   while level 1 concerns itself only with translation of characters <= 127.
  112.  
  113.   However, it is possible that you want to write a message using 'extended
  114.   characters (so > 127, most likely the IBMPC extended characters), but
  115.   want to produce a level 1 message as output (for example using the
  116.   SWEDISH character set).
  117.  
  118.   In order to remap 'IBM extended characters' you need a level 2 remapping
  119.   table, and as a result you would get a 'CHRS: <charset> 2' kludge,
  120.   indicating a level 2 message, even though your remapping table may only
  121.   output characters <= 127, which is level 1. But you actually want a
  122.   'CHRS: <charset 1' kludge, so people can use a level 1 character map to
  123.   properly remap your message!
  124.  
  125.   The LevelOneOuput keyword gives you the opportunity to use a level 2
  126.   character map with timEd, but to indicate that the output is actually a
  127.   level 1 message.
  128.  
  129.   So if you add 'LevelOneOutput SWEDISH' to timEd.cfg, timEd will use the
  130.   level 2 SWEDISH character map, but will add a 'CHRS: SWEDISH 1' kludge to
  131.   the message. Make absolutely sure that output is indeed level 1 (and that
  132.   level 1 maps, to remap your message back to what it should be, actually
  133.   exist!).
  134.  
  135.   You may add more than one name on one line for this keyword, like this:
  136.  
  137.   LevelOneOutput Swedish AnotherCharset
  138.  
  139.   You may also add this keyword more than once in timEd.cfg.
  140.  
  141.  
  142. 1.10 beta 9
  143. -----------
  144.  
  145. * Fixed a bug in JAM SubField parsing routines.
  146.  
  147.  
  148. 1.10 beta 8
  149. -----------
  150.  
  151. * Fixed 'ghost SEEN-BY's' and other trailing junk in Hudson areas.
  152.  
  153.  
  154. * After editing a file attach, the filesize of the old file would still be
  155.   displayed.
  156.  
  157.  
  158. * Fixed TRAP that could occur in corrupted JAM areas.
  159.  
  160.  
  161. * The right margin for quotes is now a bit higher.
  162.  
  163.  
  164. * GEcho 'bad messages' area import corrected.
  165.  
  166.  
  167. * In the list mode, highlighted names will still be highlighted, even when
  168.   the scrollbar moves over a line (using color_ashighaccent).
  169.  
  170.  
  171. * The nodelist lookup didn't correctly highlight a found name/address when
  172.   it was located at the end of the nodelist.
  173.  
  174.  
  175. * When moving/copying a message with 'Move_Notes Yes', the TO: line in
  176.   messages addressed to Internet would be preceded by the '* Moved (from:
  177.   <areatag>) ...' note, and effectively be lost.
  178.  
  179.  
  180. * Before changing a message, the message attributes are first re-read to
  181.   see if they were changed in the background.
  182.  
  183.  
  184. * Added a new keyword: NoSpace_Password <Yes|No>
  185.  
  186.   This controls whether timEd will add a space between the filename and the
  187.   password in the subject line for file requests (not applicable for JAM
  188.   style areas).
  189.  
  190.   Squishmail (the echomail processor) wants no space between the filename
  191.   and the password, while most (all?) other implementations _do_.
  192.  
  193.   The subject line of a file request message for the file 'tim101.zip' with
  194.   the password 'secret' will look like this:
  195.  
  196.   Subj: tim101.zip!secret
  197.  
  198.   with 'NoSpace_Password Yes', and like this:
  199.  
  200.   Subj: tim101.zip !secret
  201.  
  202.   with 'NoSpace_Password No' (this is the default).
  203.  
  204.   If you are not using the Squishmail echomail processor, and unsure what
  205.   to use, simply leave the keyword out. The default ('No') will be
  206.   applicable in most cases.
  207.   If you use the Squishmail echomail processor, use 'NoSpace_Password Yes'.
  208.  
  209.  
  210. * Addresses containing a '!' are now also treated as internet addresses
  211.   (bang path).
  212.  
  213.  
  214. * Some other minor stuff (I forgot what exactly :-).
  215.  
  216.  
  217. 1.10 beta 7
  218. -----------
  219.  
  220. * Updated on-screen copyright notice at exit of timEd to 1995.
  221.  
  222.  
  223. * Fixed 'Error opening !' message when saving a message in a JAM style
  224.   area, when JamLog nor EchoLog was defined.
  225.  
  226.  
  227. * Squish undelete didn't work in empty areas.
  228.  
  229.  
  230. * Some problems in 132 column list mode (OS/2 only) fixed.
  231.  
  232.  
  233. * Fixed a problem that would lead to crashes in the List mode in corrupted
  234.   areas.
  235.  
  236.  
  237. * Fixed a problem with correct recognition of Via lines in empty netmails.
  238.  
  239.  
  240. * The 'import text file' function in the internal editor will now strip
  241.   the ctrl-z token at the end of a text file on import.
  242.  
  243.  
  244. * Some input fields for entering filenames didn't allow high ASCII.
  245.  
  246.  
  247. * High ASCII is also allowed for the speedsearch function (Area Selection
  248.   Screen) now.
  249.  
  250.  
  251. * Highlighting in List mode sometimes messed up a bit.
  252.  
  253.  
  254. * Frodo nodelist lookup would mess up for entries with a system name longer
  255.   than 29 chars.
  256.  
  257.  
  258. * "Write to file" output for news areas showed the same TO: line in the
  259.   header twice.
  260.  
  261.  
  262. * TimEd could in some cases run out of file handles.
  263.  
  264.  
  265. * Small cosmetic problem in display of message header fixed.
  266.  
  267.  
  268. * The /386 version didn't properly re-initialize the video system after a
  269.   shell to DOS.
  270.  
  271.  
  272. * TimEd would sometimes strip the last character of a message when saving
  273.   it.
  274.  
  275.  
  276. * Problem with saving messages bigger than 64 kB in Hudson base solved.
  277.  
  278.  
  279. * TimEd's internal editor would trap if the TO: field in the message header
  280.   was too long.
  281.  
  282.  
  283. * The 'delete_word_right' function in the internal editor behaved weird
  284.   when invoked at the end of a line.
  285.  
  286.  
  287. * New keyword: EXECRYPTSIGN <progname> <parms>
  288.  
  289.   This functions like EXECRYPT and EXESIGN, and will be executed if BOTH
  290.   the options 'encrypt' and 'sign' are toggled on (instead of first running
  291.   EXECRYPT and then running EXESIGN, like 1.10.g1 does).
  292.  
  293.   TimEd will have to only run the external program once in this case,
  294.   instead of twice, saving time.
  295.  
  296.  
  297. * New keyword: SpellCheck_Default <Yes|No>
  298.  
  299.   When this is set to 'yes', timEd will by default check the 'Run
  300.   Spellchecker' box when editing the header of a new message.
  301.  
  302.  
  303. * Every keyword in timEd.cfg can now be prepended with 'OS2', '386' or
  304.   'DOS'. Keyword prepended with one of those keywords will only be used by
  305.   the indicated version of timed.
  306.   For example, you can have:
  307.  
  308.   OS2 EXESIGN c:\os2progs\sign.cmd
  309.   DOS EXESIGN c:\dosprogs\sign.bat
  310.  
  311.   The OS/2 version will  use the first line (so the .CMD file) and ignore
  312.   the second line. The DOS 16 bit version will use the second line and
  313.   ignore the first.
  314.   Similarly, you can use '386' for command only intended for the DOS 32 bit
  315.   version.
  316.  
  317.   This gives you the opportunity to use the DOS, OS/2 and 386 versions with
  318.   the same config file.
  319.  
  320.  
  321. * TimEd would crash on macro's consisting of a 1 character long string
  322.   literal (like: @1 "│").
  323.  
  324.  
  325. * TimEd had problems finding a name with high ASCII characters in the FD
  326.   nodelist.
  327.  
  328.  
  329. * Corrected handling of the 'direct' flag when 'ArcMailAttach' was set to
  330.   'No'.
  331.  
  332.  
  333. * The clock 'bleeded' through the ALT-I (ShowInfo) and Nodelist lookup
  334.   screens.
  335.  
  336.  
  337. * New command: READfiltermemory
  338.  
  339.   This functions exactly like 'READfilterrealbody' but it will only replace
  340.   the message body in memory. You can then view this new body, and reply to
  341.   it, forward it or write it to file.
  342.  
  343.   Whenever you move off that message, this new body will be lost. So moving
  344.   one message forward and one message backward will make the 'old' body
  345.   re-appear again.
  346.  
  347.   Also keep in mind, that several actions (like 'move' and 'copy' for
  348.   example) actually re-read the original message body from disk for their
  349.   work. So using 'copy' for a message with a body replaced using
  350.   'READfiltermemory' will actually copy the _original_ body!
  351.  
  352.  
  353. * It is now possible to re-edit requests and attaches after they were
  354.   entered (while editing a header).
  355.   While inside the 'edit file attach' or 'edit file request' section of the
  356.   header, simply press <enter> to re-edit a certain item. (This means
  357.   'enter' will not move you out of that section anymore, like the 1.10.g1
  358.   did - use ctrl-enter or <esc> now).
  359.  
  360.  
  361. * New keywords: DefaultInput and AssumeCharset.
  362.  
  363.   These keywords control character translation when READING a message.
  364.  
  365.   AssumeCharset <charset> <area> gives the default charset to use for a
  366.   message, when no CHRS: kludge is present in a message. In other words:
  367.   timEd will act as if 'CHRS: <charset>' is present in the message.
  368.  
  369.   In some cases/areas/countries, messages are written with a special
  370.   charset, but this is not signalled to the reader through a CHRS: kludge.
  371.   As a result, timEd will do no conversion at all on the message
  372.   (implicitly assuming CHRS: IBMPC), even though that may be applicable.
  373.  
  374.   These new keywords can _force_ timEd into doing character translation
  375.   when reading a message, even though there is no CHRS kludge in a message.
  376.  
  377.   DefaultInput gives the global default for reading messages in any area
  378.   (just like DefaultOutput does for writing messages).
  379.  
  380.   Also for this keyword (just like DefaultOutput): Make sure, that you
  381.   define this *before* any areas are defined in timEd.cfg, otherwise timEd
  382.   will not use your 'default' for the areas defined in timEd.cfg before
  383.   this new keyword! So move this keyword up in timEd.cfg 'above' any area
  384.   definitions.
  385.  
  386.   AssumeCharset <charset> <area> [<area> ... ]   can give exceptions to
  387.   'DefaultInput' for certain areas. The syntax is equal to the syntax of
  388.   'ConvertOutput' (with limited wildcard support).
  389.  
  390.   Please note, that when a 'CHRS:' kludge is present in a message, this
  391.   will obviously overrule the 'DefaultInput' or 'AssumeCharset' setup. The
  392.   writer of the message is supposed to know best what charset was used..
  393.  
  394.  
  395. * For import of GEcho and Fastecho configs, timEd now also supports the use
  396.   of environment variables (in the form: $[<environment variable>]) that
  397.   these tossers allow you to use.
  398.  
  399.  
  400. * New keyword: Internet_Empty_line <Yes | No>
  401.  
  402.   This controls whether timEd will leave an empty line between the 'TO:' on
  403.   the first line in the message body, and the rest of the body (for message
  404.   addressed to an internet address).
  405.  
  406.   The default for this is "yes". In some (rare) cases the empty line is
  407.   unwanted, in that case this should be set to 'No'. If you're not sure,
  408.   make this 'Yes'!
  409.  
  410.  
  411. * When copying/moving TAGGED messages, timEd is supposed to make no
  412.   modifications at all to a message, but in 1.10.g1 character translation
  413.   was active even in this case. This has been fixed.
  414.  
  415.  
  416. * The 'string too long to edit' error message when attempting to edit a
  417.   string that was longer than the input field on the screen should not
  418.   appear anymore. The editing function can now scroll and therefore edit
  419.   strings longer than the actual input field on the screen.
  420.   The problem was most obvious with a long subject while editing a header
  421.   and in the 'Edit Hellostring' function with long 'hellostrings'.
  422.  
  423.  
  424. * There is a check in the 'mark all messages in thread' function now. It is
  425.   recursive, with a risk of running out of stackspace. There's now a check
  426.   for this to prevent lockups/crashes on huge threads due to lack of
  427.   stackspace.
  428.  
  429.  
  430.   ====================================================
  431.  
  432.        Changes made before 1.10.g1 was released:
  433.  
  434.   ====================================================
  435.  
  436.  
  437.  
  438. 1.01 beta 1
  439. -----------
  440.  
  441. * Included FDBPACK(P).EXE. This is a tiny program that must be executed
  442.   from the timEd home directory. It will remove the 'slack' from the
  443.   database that timEd's 'Find manager' keeps to store the search profiles.
  444.   If you use the find feature a lot, this util will bring down the size of
  445.   the FDB.DAT file.
  446.  
  447. * Updated timEd to read Fastecho 1.42 (beta) config (later released as
  448.   FE 1.45).
  449.  
  450. * Fixed memory loss problem with C)hange message.
  451.  
  452. * When a message was changed, the ASCII date in the message header wasn't
  453.   'touched', while the binary date _was_. They're now both updated.
  454.  
  455. * Fiddled with code that supports the ALT-I (import file) function in the
  456.   internal editor. I could not reproduce the problem that was reported, but
  457.   maybe this helps..
  458.  
  459. * Writing messages to file in a display mode with more than 80 columns on
  460.   screen could in some cases corrupt memory and cause problems.
  461.  
  462. * Generating a file request (with ctrl-f) in the current area would mess up
  463.   timEd's orientation: it would think it was already at the last message in
  464.   that area.
  465.  
  466. * TimEd now attempts to reset the screenmode after calling an external
  467.   editor, in case the external editor changed the screenmode.
  468.  
  469.  
  470. 1.01 beta 2
  471. -----------
  472.  
  473. * Updated timEd to correctly work with GEcho 1.11, 1.12
  474.  
  475. * Nonsense date in 'dateprocessed field' in JAM in some cases fixed.
  476.  
  477. * When writing a message in a Squishbase with a FLAGS kludge, timEd would
  478.   add a carriage return to the controlinfo.
  479.  
  480. * In some cases, the search function would give a TRAP (OS/2 only).
  481.  
  482. * In some cases, when deleting the character at the end of a line just
  483.   before a marked block, timEd would mess up the screen and/or give a TRAP
  484.   (OS/2).
  485.  
  486. * Generating a huge file attach with files from different directories could
  487.   cause memory corruption.
  488.  
  489. * TimEd now attempts to check printer status before attempting to write to
  490.   the printer. I don't think this is full-proof (for DOS int 17, for OS/2
  491.   DosDevIOCtl cat. 0x05, func. 0x66), tell me what it does on networks etc.
  492.   I already know it doesn't work in an OS/2 DOS box :-(
  493.  
  494. * Implemented hidden CC:'s. If a CC: item starts with '#', the name will be
  495.   hidden from the list of recipients (although a copy of the message will
  496.   be sent).
  497.   Example:
  498.   CC: Gerard van Essen, #Secret Lover, My Wife
  499.  
  500.   In this case 'Secret Lover' is not mentioned in the list of other
  501.   recipients, even though he/she will get a copy. (Please note that *I*
  502.   didn't ask for this option, Reinier did! :-)
  503.  
  504. * The *.MSG renumbering is now handled internally, instead of calling an
  505.   external program.
  506.  
  507. * Deleting items in the search manager could sometimes (when a lot of items
  508.   were already entered) lead to problems.
  509.  
  510. * It is now possible to save a default search profile (ALT-D in search
  511.   manager). When the search manager is first entered, this default profile
  512.   will be loaded, unless a profile was saved for that particular area (in
  513.   which case that particular profile is obviously loaded).
  514.  
  515.   After pressing ALT-R (clear all search strings) in the search manager,
  516.   timEd will now ask whether the default profile should be reloaded.
  517.  
  518. * New keyword: JamGetLast <Yes|No>
  519.  
  520.   Determines whether timEd will get the LAST read or HIGHEST read message
  521.   from JAM lastread files. Useful for Proboard users (PB doesn't update the
  522.   lastread pointer, only the highest read pointer, so set it to NO).
  523.  
  524. * Fixed a problem in the Area Selection Screen: if you deleted a message
  525.   during the personal mailscan, this would sometimes lead to a crash (when
  526.   you deleted the only new message in an area and used 'mode ShowNew' or
  527.   'NewTagged').
  528.  
  529. * In some places, it is now possible to use 'hotkeys' to make a quick
  530.   selection. An example is ALT-M in the area selection screen.
  531.  
  532. * New colour settings:
  533.  
  534.   COLOR_POPTITLE (try 30)
  535.  
  536.   This changes the colour of the title of popup boxes. Hardly used (only if
  537.   you press F1 :-).
  538.  
  539.   COLOR_FINDACCENT (try 14)
  540.  
  541.   Accented ('highlighted') characters, what keys to press in the helpline
  542.   at the bottom of the screen. In the search configuration screen.
  543.  
  544.   COLOR_MSGBARACCENT (try 30)
  545.  
  546.   An accented character in the statusbar at the bottom of the screen (msg
  547.   reading screen, helplines when displaying a picklist).
  548.  
  549.   COLOR_ASACCENT (try 14)
  550.  
  551.   In a picklist, an accented character (hotkey). Try ALT-M in the area
  552.   selection screen for a test.
  553.  
  554.   COLOR_ASHIGHACCENT (try 30)
  555.  
  556.   Same as above, but in a highlighted (current) line.
  557.  
  558. * In the list mode, messages written BY you are also highlighted now. TimEd
  559.   only highlights the 'fromname' or the 'toname' if applicable, not the
  560.   entire line like older versions.
  561.   The exception is 'broad' list in case of a personal message. Because the
  562.   'toname' is not shown in this case, the entire line is highlighted.
  563.  
  564. * New 'variables' can be used in hello, rephello (etc) strings:
  565.  
  566.   - %thisto     - name of person *this message* is addressed to
  567.   - %thisfto    - first name of person *this message* is addressed to
  568.   - %thisfrom   - name of person *this message* is from (your name)
  569.   - %thisffrom  - first name of person *this message* is from (your first name)
  570.  
  571.   This is useful when writing a reply (for a new message, these are the
  572.   same as %from, %to etc) and you changed the name of the recipient. This
  573.   can also come in handy if you always want to sign a message with the name
  574.   you used in the header, even if this is an alias.
  575.  
  576. * Address book functionality: when you press <TAB> while editing a TO:
  577.   field in a message header, a list of all available macro's will pop up
  578.   and allows you to select one of them.
  579.  
  580. * You can now put more than one 'writename' statement in timEd.cfg. The
  581.   first one will be handled just like before, but additional path/filenames
  582.   can now be shown in a picklist. After choosing ALT-W, press <TAB> in the
  583.   input field to get a list with all the additional 'writenames' that were
  584.   defined in timEd.cfg.
  585.  
  586. * Fixed a problem that could appear when quoting very long kludges.
  587.  
  588. * Tagsets (loaded and saved from the Area Selection Screen with ALT-R and
  589.   ALT-W) can now have a description. A list with tagsets and descriptions
  590.   will now be shown before loading or saving a tagset. Before saving, a
  591.   description can first be edited.
  592.   To add descriptions, simply load a tagset and immediately save it again
  593.   and edit the description..
  594.  
  595. * The DOS version is now compiled with the Watcom compiler, and makes use
  596.   of overlays (resulting in _much_ lower memory consumption). I had to
  597.   remove quite a few Borland specific parts, so expect some problems with
  598.   it! (I know I do! :-)
  599.  
  600.  
  601. 1.01 beta 3
  602. -----------
  603.  
  604. * DOS: overlay organization changed a bit: more memory free now.
  605.  
  606. * Fixed problem with 'filename selection list' for ALT-W (Write to file).
  607.  
  608. * Fixed problem with highlighting in List mode.
  609.  
  610. * Fixed problem that could appear when you pressed crtl-right at the end of
  611.   the last line on the screen.
  612.  
  613. * Implemented HC:. This is the same as CC:, but in this case ALL CC:
  614.   messages will be hidden, and no info about CC:'s will be written at the
  615.   top of the message at all.
  616.   This will also be the case if you use CC: but individually hide all
  617.   recipients with a # as the first character..
  618.  
  619. * 'JAMGetLast Yes' is now the default, instead of 'NO'. In other words:
  620.   default behaviour is now the same as it was in timEd 1.01.
  621.  
  622. * Private nodelist that excluded nodelist flags from the 'raw nodelist'
  623.   could confuse timEd's nodelist lookup a bit (Frodo nodelist).
  624.  
  625. * NODEX.DAT was not opened in shared mode.
  626.  
  627. * Stupid error in wordwrapping routines (that messed up quotes) fixed.
  628.  
  629. * It is now possible to mark an entire thread of messages with one
  630.   keypress. The lucky winner of the 'let me be the key' competition is the
  631.   '*' key.
  632.  
  633.  
  634. 1.10.b1
  635. -------
  636.  
  637. * Pushed version number up to 1.10. I'm making too many changes to call it
  638.   1.02 :-)
  639.  
  640. * Lots of changes to the message base access code, mainly to support JAM a
  641.   bit better. The structures passed around simply did not contain enough
  642.   information to store all the properties of a JAM message. This is now
  643.   changed, but required many changes (obviously, a message editor edits the
  644.   (message) stucture all over the place...)
  645.  
  646.   Beware of problems (!), mainly concerning dates, seenby's and such. It is
  647.   next to impossible to make this many changes without causing any
  648.   problems..
  649.  
  650. * Header editing is rewritten, now allows simultaneous attaches/requests
  651.   _and_ subject in JAM areas. It takes some getting used to, I guess,
  652.   because it is quite different from older versions and other programs. It
  653.   is, however, _required_ in order to support the JAM features.
  654.  
  655.   It's pretty straightforward, I think. Press ALT-A or ALT-R to enter
  656.   attaches and/or requests (you _must_ use this, do _not_ enter
  657.   attaches/requests in the subject line anymore!). Then add or delete
  658.   attaches/requests with <del> and <ins>. You can get out of the
  659.   request/attach editing by pressing <esc>, <tab> or <enter>.
  660.  
  661.   If files are attached or requested in a *.MSG, Squish or Hudson area, the
  662.   subject can't be edited anymore. (Because those formats do not allow
  663.   simultaneous attaches/requests and a subject).
  664.  
  665. * Better support for Internet stuff. Two keywords:
  666.  
  667.   UucpAddress <address> : Address of your Internet gate.
  668.   UucpName <name> : name used for the gate (usually 'UUCP' or 'Postmaster').
  669.  
  670.   TimEd will now detect internet addresses in the TO: field and
  671.   automatically address the message to the gate, and put a TO: field in the
  672.   message body. You can enter a string longer than 36 chars in the header
  673.   as well, timEd will handle it.
  674.  
  675.   Reading is also improved: the TO: field in the message body will also be
  676.   detected and the Internet address will show up in the header instead of
  677.   the body.
  678.  
  679.   The idea is to never see a TO: field in the body anymore. The internet
  680.   addresses should always show up in the header and can be edited there.
  681.   TimEd will write the messages to disk with a TO: line in the body, though.
  682.  
  683. * New type of area: 'NewsArea'. In such areas, the TO: line is not shown,
  684.   the 'Organization' is shown instead (if found). No Origins are
  685.   added/required, and timEd doesn't use the initials of the message writer
  686.   when quoting, just '>'.
  687.  
  688.   The type 'MailArea' (for Internet 'mail') is also recognized, but I'm not
  689.   sure how to implement it exactly yet (so it is a mess now :-)
  690.  
  691. * Added support for Soup2SQ (by Steven van Loef). Keyword is:
  692.  'Soup2SQCFG <path+name of config file>'.
  693.  
  694. * Redefinable keys and macro's. TimEd will now read a file called
  695.   'timkeys.cfg' from the timEd directory at startup to get the key
  696.   bindings. All possible commands are present in the sample timkeys.cfg.
  697.  
  698.   The format of the timkeys.cfg file is as follows:
  699.  
  700.   [<section name>]
  701.  
  702.   <key> <command> [<command>, [<command]]
  703.   <key> <command> [<command>, [<command]]
  704.   .
  705.   .
  706.  
  707.   [<section name>]
  708.  
  709.   <key> <command> [<command>, [<command]]
  710.   <key> <command> [<command>, [<command]]
  711.   .
  712.   .
  713.  
  714.  
  715.   <section name> defines the scope of the key binding or macro. The scope
  716.   defines where the macro is active.
  717.   The scope (and the section name) can be
  718.  
  719.   ■ AreaSelection - key/macro active in the area selection screen
  720.   ■ Editor        - key/macro active in the internal editor
  721.   ■ MessageReader - key/macro active in the message reading screen
  722.   ■ List          - key/macro active in the message list mode
  723.   ■ Global        - key/macro active everywhere in the program.
  724.  
  725.   This means that a key can have a function/macro in the Area Selection
  726.   screen, and a different one in the internal editor. Also, a key defined
  727.   in the section 'AreaSelection' will do nothing in the 'List mode' (unless
  728.   that key is defined in that section as well).
  729.  
  730.   'Global' is dangerous: it overrules everything. If you would define the
  731.   'esc' key to produce an 'a' in the global section, it will produce this
  732.   'a' EVERYWHERE in the program and NEVER work like it is supposed to.
  733.  
  734.   However, for some keys (most function keys, and ALT-0 to ALT-9 for
  735.   example) this doesn't make any difference, because they are never used
  736.   anyway. Maybe it's useful to translate ö to 'oe' everywhere as well, or
  737.   something like that..
  738.  
  739.  
  740.   <key>
  741.   -----
  742.  
  743.   Key can be any printable character, F1..F12, ins, enter, del, home, end,
  744.   pageup, pagedown, cursorup, cursordown, cursorleft, cursorright, space,
  745.   esc, tab, greyminus (the grey '-' key on your numeric keypad).
  746.  
  747.   Then there are variations of these: Shifted (prepend #, like #F1 for
  748.   shift-F1), with the CTRL key (prepend ^, like ^F1 for CTRL-F1) and with
  749.   the ALT-key (prepend @, like @F1 for ALT-F1).
  750.  
  751.   All 'normal' keys are also available with ctrl (^a .. ^z) or ALT (@a ..
  752.   @z). And numeric keys with ALT (@0 .. @1).
  753.  
  754.   That should give enough combinations to choose from. See sample
  755.   timkeys.cfg to see how easy it is.
  756.  
  757.   <command>
  758.   ---------
  759.  
  760.   This can be any of the functions that timEd can perform, like 'move up',
  761.   'move down', 'enter a message', 'find', 'delete message' etc.
  762.   All functions now have a name, usually a name that speaks for itself like
  763.   'EDITup' to move one line up in the editor, or 'EDITshell' to shell to
  764.   the OS from within the editor. All commands are shown in the sample
  765.   timkeys.cfg (except some new ones only mentioned in this whatsnew file).
  766.  
  767.   The line:
  768.  
  769.   cursorup  EDITup
  770.  
  771.   tells timEd to execute the command 'EDITup' whenever the key 'cursorup'
  772.   is pressed (now that makes sense :-).
  773.   And:
  774.  
  775.   @J  EDITshell
  776.  
  777.   tells timEd to shell to the OS from the internal editor whenever the key
  778.   combination ALT-J is pressed.
  779.  
  780.   You can also insert 'literal strings' as a command. Literal text should
  781.   be enclosed in quotes, like this: "sample text", or this: 'sample text'.
  782.  
  783.   You can enter quote-characters inside a literal string. If you enclose
  784.   the string in double quotes, you can enter single quotes inside the
  785.   string, like this: "literal with a ' quote inside!".
  786.   Similarly, you can enter double quotes inside the string if you enclose
  787.   the entire string in single quotes.
  788.  
  789.   For example:
  790.  
  791.   F5  "My lipf are fealed"
  792.  
  793.   Whenever you press F5, timEd will write the string 'My lipf are fealed'.
  794.  
  795.   It is also possible to enter more than one command for a certain key. For
  796.   example:
  797.  
  798.   F2 EDITenter "See you later!" EDITenter EDITenter "Gerard." EDITsave
  799.  
  800.   Whenever F2 is pressed, timEd will move one line down in the editor, 'See
  801.   you later' will be printed, timEd will move two lines down, then print
  802.   'Gerard.' and then the message will be saved.
  803.  
  804.   Now in most places the defined commands will suffice. However, sometimes
  805.   a certain action doesn't have a command. When you edit a header, for
  806.   example, there is no special command to press 'enter' to accept the input
  807.   of a field and move to the next (there is no command HEADEREDITaccept or
  808.   anything like that).
  809.   In such cases you can also give the name of the key (in this case
  810.   'enter') as a command.
  811.   Entering a new message/header could be defined as follows:
  812.  
  813.   @F1 READenter "All" enter "A new message" enter enter
  814.  
  815.   This would start a new message, write 'All' in the TO: field, press
  816.   enter, write 'A new message' in the subject field, press enter, and press
  817.   enter again to get through the attribute editing screen.
  818.  
  819.   Please note, that this only works if there is no special command. For
  820.   example, 'ins' in a macro will do nothing when inside the internal
  821.   editor. (The fact that you may have connected the command
  822.   'EDITtoggleinsert' to the 'ins' key makes no difference.)
  823.  
  824. * Drive 'mapping' for the import routines for tossers. Handy for
  825.   peer-to-peer networks. If the programs on the 'server' for example always
  826.   use drive C:, and you try to use these programs from another PC where
  827.   that drive is (network-)drive F:.
  828.  
  829.   If you use 'DriveReplace C F' all references to drive C: will be
  830.   changed to references to drive F:.
  831.  
  832.   Format:
  833.  
  834.   DriveReplace <olddrive> <newdrive>
  835.  
  836.   (So: Replace <olddrive> with <newdrive>).
  837.  
  838.   Please note that this replace is only for the routines that import the
  839.   tosser configuration, not in other places in the program.
  840.  
  841. * Many, many smaller things. If they concerned you, you'll see :-)
  842.  
  843.  
  844. 1.10.b2
  845. -------
  846.  
  847. * CHARSET support (FSC-0054).
  848.  
  849.   What is CharSet support? Well, read FSC-0054 and keep in mind that timEd
  850.   supports it :-) I know I should now give a clear explanation but decided
  851.   to put it off until I have to write the docs for a full release <g>.
  852.  
  853.   Due to lack of decent test-material I have my doubts about the
  854.   implementation, to be honest, but at least there's something. I tried to
  855.   stick to FSC-0054 as much as possible, and timEd uses the READMAPS.DAT
  856.   and WRITMAPS.DAT described in that proposal (in the timEd dir).
  857.  
  858.   READMAPS.DAT contains the remapping tables used to convert 'foreign'
  859.   character sets to the 'local machine architecture' (IBMPC). So for
  860.   example from LATIN-1 to IBMPC, or from MAC to IBMPC.
  861.   Whenever a message containing a CHRS: kludge is encountered, timEd will
  862.   check the charset mentioned in that kludge. More specifically: it will
  863.   check whether a remapping table from <that charset> to IBMPC is present.
  864.   If it is, that table is used to remap the characters found in the message
  865.   to IBMPC for display.
  866.  
  867.   WRITMAPS.DAT is similar, but for the opposite. It is used to remap
  868.   characters from IBMPC to another charset when a message is written to
  869.   disk.
  870.  
  871.   Using these standard 'maps' means you can add to, and remove from,
  872.   these maps yourself. You can use the simple programs found in
  873.   CHARSET3.ZIP (sample code provided by the author of FSC-0054) to edit
  874.   these maps.
  875.  
  876.   I have included sample writ/readmaps.dat in this archive, together with
  877.   the 'source maps' that were used to generate them. Also included is the
  878.   MAKEMAPS.EXE (made by Duncan McNutt) from the sample code provided by the
  879.   authour of FSC-0054). Look in CHRSTUFF.ZIP for this.
  880.  
  881.   Two new keywords are supposed to control it all:
  882.  
  883.   ■ DefaultOutput IBMPC
  884.  
  885.   This defines the default CharSet to use for writing messages. If you
  886.   leave it out, the default is ASCII (that makes sense, but beware that any
  887.   'high ASCII'characters that you enter will then be lost!).
  888.   TimEd will not write 'CHRS: ASCII' kludges (that seems kind of silly to
  889.   me :-), so if you leave out all this stuff, no CHRS kludges will appear
  890.   in your messages.
  891.  
  892.   If you want to keep the 'high ASCII' characters in your messages, add
  893.   'DefaultOutput IBMPC' to your config.
  894.  
  895.   Make sure, that you define this *before* any areas are defined in
  896.   timEd.cfg, otherwise timEd will use 'ASCII' for the areas defined in
  897.   timEd.cfg before this new keyword! So move this keyword up in timEd.cfg
  898.   'above' any area definitions.
  899.  
  900.  
  901.   Conversion for reading is always active, but you probably won't notice
  902.   that anyway (if you're not interested :-).
  903.  
  904.   ■ ConvertOutput LATIN-1 artware *028 artware*
  905.  
  906.   The above keyword gives an exception to the 'DefaultOutput'. Format is
  907.  
  908.   ConvertOutput <charset> <area> [<area> [<area>]]
  909.  
  910.   You give the name of the charset to use, and the areatag(s) of the
  911.   area(s) to use it for. Limited wildcard support is available, the first
  912.   or the last character can be a '*'.
  913.   In the example above, both "basic.028" and "demo.028" will match the
  914.   '*028', and both "artware" and "artware.closed" will match 'artware*'.
  915.  
  916.  
  917. * Most reported bugs fixed.
  918.  
  919.  
  920. * The (DOS) lowlevel keyboard code, that was silently replaced with
  921.   HighLevel code in .b1 (because some keys like ^up suddenly stopped
  922.   working) is now LowLevel again :-)
  923.  
  924.  
  925. * Added the ability to run external programs. The function name is
  926.   READrunexternal. When executed, timEd will ask for two things: the name of
  927.   the program to run, and the command line parameters to use for that
  928.   program.
  929.  
  930.   The message area will then be closed, the external program run, and the
  931.   area opened again. This offers the opportunity to run programs that
  932.   perform actions on the message area (like a maintenance program) that
  933.   need exclusive access.
  934.   After the external program ended, timEd will wait for a keypress so you
  935.   can see what happened.
  936.  
  937.   When entering the command line parameters, you can use several variables
  938.   that will be filled in by timEd according to the current area and
  939.   message. These variables are always between square brackets: '[]'.
  940.   The following variables can be used:
  941.  
  942.   from       - Name in the 'from' field of current message.
  943.   to         -             'to'
  944.   subject    -             'subject'
  945.   orig       - Origination address of current message (like 2:281/527).
  946.   dest       - Destination address of current message (like 2:281/527).
  947.   areatype   - Type of current area (NETMAIL, ECHOMAIL, LOCAL, NEWS, MAIL).
  948.   areatag    - Official areatag of current area.
  949.   format     - Storage format (SQUISH, HMB, JAM, SDM).
  950.   areadir    - Directory or base name of current area, board number if
  951.                Hudson.
  952.   msgno      - Message number of current message ('relative' number for
  953.                Squish and Hudson)
  954.   realmsgno  - Real message number, for Squish (UMSGID) and Hudson (real
  955.                number in Hudson base, not the relative number in the area).
  956.                For JAM and *.MSG, this is always equal to msgno.
  957.   file       - Name of the current file to use. Not in use when reading a
  958.                message (it's for EXESIGN, EXECRYPT and EXESPELL described
  959.                below).
  960.   newfile    - Name of a new file to use (this is also for EXECRYPT, EXESIGN
  961.                and EXESPELL).
  962.   attach     - Files attached to this message (list of files).
  963.   request    - Files requested in this message (list of files [!passwords]).
  964.  
  965.   So the command line parameters "scan -s[areatag]" could be translated to
  966.   "scan -sARTWARE", and "zfax 4 [attach]" could be translated to 'zfax 4
  967.   c:\xenia\faxin\xenia001.fax' and so on.
  968.   If you want to add a literal '[', you should put two of them in the
  969.   string: '[[in brackets!]'.
  970.  
  971.  
  972. * Extra commands to write out messages to a file:
  973.  
  974.   READwritebody     - write the body (so no header) out to file
  975.   READwriterealbody - write the real body (without tearline/origin) to file.
  976.   READwriteheader   - write only the header to a file.
  977.  
  978.   These work just like the standard 'write to file' command. TimEd prompts
  979.   for a filename to write to first.
  980.   These new commands are, by default, not assigned to any key (-combination).
  981.  
  982. * Commands to replace the body of a message with the contents of a file:
  983.  
  984.   READfiltermsg      - zap the entire message body and replace with a file.
  985.   READfilterrealbody - zap the real body of a message (so this saves the
  986.                        tearline / origin) and replace with text from a
  987.                        file.
  988.  
  989.   Combining these new capabilities with macro's gives quite a few
  990.   possibilities. Write the real body out to disk, run an external program
  991.   on that real body (decrypt with PGP), and replace the body with the
  992.   resulting textfile. For example... Put it under F2 and there's your PGP
  993.   decrypt function.
  994.  
  995.   Or just write to file and run PGP on it to verify a signature. And so on.
  996.  
  997.   These new commands are, by default, not assigned to any key (-combination).
  998.  
  999. * The 'maintenance menu' is now user definable. It has now turned into a
  1000.   special user menu to start macro's from. Together with the 'runexternal'
  1001.   command all function that were on the 'maint menu' in older versions are
  1002.   still possible.
  1003.  
  1004.   Because this menu is nothing more than a specialized macro launcher, you
  1005.   need to define it in 'timkeys.cfg'. A special section called [menu] is
  1006.   added to define the menu.
  1007.  
  1008.   The format in this section is:
  1009.  
  1010.   <scope> <description> <command> [<command> [<command>]]
  1011.  
  1012.   <scope> can be:
  1013.  
  1014.   menusquish - item appears in Squish style areas
  1015.   menujam    - item appears in JAM style areas
  1016.   menuhmb    - item appears in HMB style areas
  1017.   menusdm    - item appears in *.MSG style areas
  1018.   menuall    - item appears in all areas
  1019.  
  1020.   <description> gives the description of the action that will be performed
  1021.   when the macro is executed. It is what appears in the 'maint menu' in
  1022.   timEd, like "Pack area", or "Undelete messages". It should be enclosed in
  1023.   single or double quotes.
  1024.  
  1025.   You can also highlight a part of the description (one letter most likely)
  1026.   by enclosing it in tildes, like "~P~ack area". The letter 'p' will now be
  1027.   highlighted, and will also act as a 'hotkey' (when that particular key is
  1028.   pressed, the function will be executed).
  1029.   Take care to not add the same highlighted key to the menu twice, or it
  1030.   will not work as intended.
  1031.  
  1032.   Finally, <command> [<command>...] gives the actual macro (just like
  1033.   'normal' macro definitions) to be executed when the item is selected.
  1034.  
  1035.   Samples:
  1036.  
  1037.   [menu]
  1038.  
  1039.   menusquish "~P~ack area" READrunexternal "sqpackp" enter "[areadir]" enter
  1040.   menusquish "~U~ndelete message" READsqundelete
  1041.   menujam    "~J~am pack"  READrunexternal "mbutil" enter "pack [areatag]" enter
  1042.   menuhmb    "~H~mb pack"  READrunexternal "hmb" enter "[areadir]" enter
  1043.   menusdm    "~R~enum SDM"  READsdmrenumber
  1044.  
  1045.  
  1046. * Two new functions are defined to access the commands that were processed
  1047.   internally in the old maint menu:
  1048.  
  1049.   - READsqundelete  - Undelete messages in a Squish area.
  1050.   - READsdmrenumber - Renumber a *.MSG area.
  1051.  
  1052.  
  1053. * The 'special' section in the header editing part is now active. Press
  1054.   ALT-S to access it. Use the cursor keys to move up or down and press
  1055.   <space> or <enter> to toggle a 'mark' for a certain item.
  1056.  
  1057.   The commands will be executed after the message it edited. For all three
  1058.   items, new keywords in timEd.cfg are available to define what should
  1059.   actually be executed:
  1060.  
  1061.   ExeSpell <progname> <parms>
  1062.   ExeCrypt <progname> <parms>
  1063.   ExeSign  <progname> <parms>
  1064.  
  1065.   The parameters can once again contain the 'variables' enclosed in square
  1066.   brackets, that can also be used when executing an external program with
  1067.   READrunexternal. This time, [file] does contain something useful: the
  1068.   name of the file the message will be written to before the external
  1069.   program is executed. (But this time, msgno and realmsgno are unusable -
  1070.   the message does not have a number yet, because it is not yet written).
  1071.  
  1072.   Example:
  1073.  
  1074.   exesign e:\pgp\pgp -eta [file] -o [file]
  1075.  
  1076.  
  1077. 1.10.b3
  1078. -------
  1079.  
  1080. * There is now also a 32 bit extended DOS version (TIM386.EXE). It uses
  1081.   (surprise, surprise) the DOS/4GW DOS extender from Rational Systems.
  1082.   Because many programs use it (GIGO, Squish, Fastlist), the required
  1083.   run-time module (called DOS4GW.EXE) is available just about everywhere,
  1084.   so I have not included it in the package. It's available from my system
  1085.   as DOS4GW.ZIP, though (the latest I know of is v1.97).
  1086.  
  1087.  
  1088. * Full nodelist browsing is now added. Instead of getting a (limited) list
  1089.   with only matching names, you now get a full screen of names/nodes where
  1090.   you can select a node and/or move around using the cursor keys and
  1091.   page-up/down.
  1092.  
  1093.   Browsing works for all supported nodelist formats (V7, Frodo and
  1094.   fidouser.lst). The behaviour concerning the fidouser.lst is changed
  1095.   because of this: it is NOT searched first (as a quicklist) anymore. You
  1096.   can now have only ONE type of nodelist. So use the fidouser.lst only if
  1097.   you do not (want to) have V7 nor a Frodo nodelist.
  1098.  
  1099.  
  1100. * New keyword in timEd.cfg: EditSaveMenu <Yes|No>
  1101.   If you set this to 'yes', a menu will pop up after you save a message.
  1102.   This allows you to toggle the 'sign', 'encrypt' and 'spellcheck' actions.
  1103.   When you're done, select 'save message'.
  1104.   This is mainly for people using an external editor. People who use the
  1105.   internal editor can use the following:
  1106.  
  1107.  
  1108. * New command in the editor: 'EDITsavemenu'. This functions like
  1109.   'EDITsave', but it will first show you the menu where you can toggle
  1110.   'sign', 'crypt' and 'spellcheck'.
  1111.  
  1112.   By binding this command to a special key combination, you can easily
  1113.   select (from the internal editor) whether you want to save immediately
  1114.   (EDITsave) or want to go through the menu first (EDITsavemenu).
  1115.  
  1116.   By default, this command is assigned to the F10 key in the internal
  1117.   editor.
  1118.  
  1119.  
  1120. * New command in internal editor:
  1121.  
  1122.   EDITrunexternal
  1123.  
  1124.   This can be used to run an external program. It is very much like the
  1125.   'runexternal' command that is available from the message reading screen.
  1126.   You can use the same variables ([from], [to] etc).
  1127.  
  1128.   By default, this command is assigned to the ^E key combination.
  1129.  
  1130.  
  1131. * Commands to write the text you are editing (or a part of it) to a file:
  1132.  
  1133.   EDITwriteraw      - write all text to a file in 'raw' format.
  1134.   EDITwriterawblock - write the currently marked block to a file in raw format.
  1135.   EDITwritefmt      - write all text (formatted, wrapped at column 78).
  1136.   EDITwritefmtblock - write a block (formatted).
  1137.  
  1138.   Raw format means that the text is written out as paragraphs, each
  1139.   paragraph ending with a 'hard return' (ASCII 13). This is the preferred
  1140.   format, because it is the format used to transport messages in fidonet
  1141.   mail packets. If you write a (part of a) message to a file in this format
  1142.   and then read it in again with 'import file', it will be exactly the same
  1143.   as it was before you saved it.
  1144.  
  1145.   If, in contrast, you use 'EDITwritefmt' to write the message to a file
  1146.   and then import it again, the message will have those ugly 'hard returns'
  1147.   at the end of every line, which is NOT according to FidoNet standards. So
  1148.   only use the 'writefmt' commands if you're not going to import the text
  1149.   again!
  1150.  
  1151.   The 'writeraw' commands are assigned to keys in the default timkeys.cfg:
  1152.  
  1153.   @W - write entire text to a file.
  1154.   ^W - write block to file.
  1155.  
  1156.   There's also a smaple macro's included that uses this command:
  1157.  
  1158.   F2 - write entire text to a file called
  1159.  
  1160. * Keywords to delete a file:
  1161.  
  1162.   EDITfiledelete - delete a file, from internal editor
  1163.   READfiledelete - delete a file, from message reading screen.
  1164.  
  1165.   An input box will pop up, where you can enter the name of the file to be
  1166.   deleted. Press <enter> and the file is gone..
  1167.  
  1168.   These new commands are, by default, not assigned to any key (-combination).
  1169.  
  1170.  
  1171. * The 'encrypt', 'sign' and 'spellcheck' commands have some added
  1172.   capabilities. They can now read in a file that is different from the file
  1173.   that was originally written out by timEd.
  1174.   The older version wrote out 'timed.msg' in the timEd dir, and also read in
  1175.   that file again. This new version can write out timed.msg, and then read
  1176.   in another file (timed.new).
  1177.  
  1178.   The logic is as follows:
  1179.  
  1180.   TimEd writes out the body of the message to a file (the name is available
  1181.   for the EXESPELL, EXECRYPT and EXESIGN commands as the variable [file]).
  1182.  
  1183.   It then runs the external program as indicated.
  1184.  
  1185.   After that it will check whether a new file in the timEd dir (available
  1186.   as the variable [newfile]) is present. If it is present, and the
  1187.   date/time is the same or newer than the date/time for the original file,
  1188.   this new file will be used as the body. If it is not available, or older
  1189.   than the original file, the original file will be used.
  1190.  
  1191.   In practise, this means that you can make a spellchecker or encryption
  1192.   program modify the original file (variable [file]), _or_ you can have it
  1193.   write it's output to another file (variable [newfile]).
  1194.  
  1195.  
  1196. * Better support for flags in the V7 nodelist.
  1197.  
  1198.   The V7 nodelist doesn't, by default, store a lot of information about the
  1199.   'flags' that a node has in the nodelist. Flags like V32, VFC, V34 or NEC
  1200.   are not stored by default.
  1201.  
  1202.   However, most nodelist compilers give the user the opportunity to store
  1203.   some user-defined values in the V7 nodelist, based on the presence of
  1204.   certain flags in the raw (St. Louis) nodelist.
  1205.  
  1206.   Two values can usually be stored: a value for the 'ModemType' and a value
  1207.   for the 'NodeFlags'.
  1208.  
  1209.   ModemType.
  1210.   ==========
  1211.  
  1212.   The modemtype value is (obviously) a value to indicate what kind of modem
  1213.   a certain node has. In the nodelist, several flags are present to indicate
  1214.   the type of modem the node uses ('V32B' for a V32bis modem, 'V34' for a
  1215.   V34 modem, 'V42b' if the modem support V42bis compression, etc).
  1216.  
  1217.   The 'modemtype' value in the V7 nodelist is one byte (8 bits). There are
  1218.   two ways to use this byte:
  1219.  
  1220.   1 - Each bit independently, where each bit signifies a certain flag. When
  1221.       the bit it set (a value of 1 for that bit), a certain flag in the
  1222.       nodelist is present. When the bit is not set, the flag is not
  1223.       present. Because there are 8 bits in a byte, you can store the
  1224.       presence/absence of 8 different flags this way.
  1225.       The good thing is, that several flags can be present at the same
  1226.       time: three different bits may be set at the same time, indicating
  1227.       that three different flags are present.
  1228.  
  1229.   2 - All bits taken together as one value (byte). By looking at the entire
  1230.       byte, you can have 256 different values (0 - 255). When the byte has
  1231.       a certain value, a certain flag in the nodelist is set.
  1232.       The advantage of this is, that you could represent up to 255
  1233.       different flags. The disadvantage is that you can only have one flag
  1234.       per node.
  1235.  
  1236.   Most (if not all) V7 nodelist compilers support method 1. It is the 'old'
  1237.   method that has been used by Binkley in the past. Some newer compiler
  1238.   (also) support method 2.
  1239.  
  1240.   TimEd now has the ability to convert a certain value in the ModemType
  1241.   field of a V7 nodelist back into a nodelist flag (like 'V34'). If you do
  1242.   a nodelist lookup, and press <tab> for details, these flags will be
  1243.   shown.
  1244.  
  1245.   Two keywords are possible, to support both methods:
  1246.  
  1247.   V7ModemTypeBit - to support method 1.
  1248.   -------------------------------------
  1249.  
  1250.   Syntax:  V7ModemTypeBit <bit value> <flag>
  1251.   Example: V7ModemTypeBit 64 V34
  1252.  
  1253.   The 'bit value' must be a power of 2 (i.e.: 1, 2, 4, 8, 16, 32, 64 or 128).
  1254.   For each of those values, one of the bits will be set (to indicate one of
  1255.   the flags in the nodelist is present).
  1256.   The above example indicates that if the bit representing the value 64 is
  1257.   set, the V34 flag is present.
  1258.  
  1259.   Another example: V7ModemTypeBit 4 VFC
  1260.  
  1261.   This would indicate, that if the bit representing the value 4 would be
  1262.   set, that node has the 'VFC' flag in the nodelist.
  1263.  
  1264.   This is the same as the 'BitType TypeDef' statements that the FastList
  1265.   nodelist compiler (made by Alberto Pasquale) uses.
  1266.   It is also the same as the 'ModemType' values that the FastV7 nodelist
  1267.   compiler (made by Marius Ellen) uses.
  1268.  
  1269.   V7ModemTypeValue - to support method 2.
  1270.   ---------------------------------------
  1271.  
  1272.   Syntax:  V7ModemTypeValue <byte value> <flag>
  1273.   Example: V7ModemTypeValue 13 V34
  1274.  
  1275.   This would indicate, that if the 'ModemType' field is set to 13, the node
  1276.   has the 'V34' flag in the nodelist.
  1277.   Along the same lines:
  1278.  
  1279.   Example: V7ModemTypeValue 9 VFC
  1280.  
  1281.   This would indicate that if the modemtype field is set to 9, the node has
  1282.   the VFC flag in the nodelist.
  1283.  
  1284.   These values are the same as Fastlist's 'normal' TypeDef statements.
  1285.  
  1286.   NodeFlags.
  1287.   ==========
  1288.  
  1289.   The NodeFlags value in the V7 nodelist is a 16 bit value. It is present
  1290.   to indicate the nodelist flags a node has (and this could include flags
  1291.   to indicate what type of modem is present...).
  1292.  
  1293.   The different bits in the NodeFlags field indicate different flags (just
  1294.   like method 1 for the ModemType value).
  1295.   Some of the bits are pre-defined (like a certain bit to indicate CM
  1296.   (Continuous mail) status, and a bit to indicate a node is a HUB, etc).
  1297.  
  1298.   TimEd can now convert these bit values back to flags, using a method very
  1299.   similar to method 1 of the ModemType field.
  1300.   The keyword to use is V7NodeFlagBit.
  1301.  
  1302.   Syntax:  V7NodeFlagBit <bit value> <flag>
  1303.   Example: V7NodeFlagBit   16  CM
  1304.  
  1305.   This indicates, that if the bit that represents the value 16 is present,
  1306.   the CM flag is present for that node.
  1307.   Another exmaple:
  1308.  
  1309.   V7NodeFlagBit   1  HUB
  1310.  
  1311.   If the bit representing the value 1 is present, a node is a HUB.
  1312.   Both of the above examples are predefined values. But some nodelist
  1313.   compilers allow a user to define a few bits themselves.
  1314.  
  1315.   The FastV7 compiler uses the keyword 'NodeFlag' to allow this. The value
  1316.   of that keyword are the same as the values timEd uses.
  1317.  
  1318.   Because the ModemType field consists of 16 bits, and the values have to
  1319.   be a power of 2 again, the possible values are: 1, 2, 4, 8, 16, 32, 64,
  1320.   128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768.
  1321.  
  1322.   Predefined values (in the nodelist, not in timEd!) are:
  1323.  
  1324.   V7NodeFlagBit 1     HUB
  1325.   V7NodeFlagBit 2     HOST
  1326.   V7NodeFlagBit 4     REGION
  1327.   V7NodeFlagBit 8     ZONE
  1328.   V7NodeFlagBit 16    CM
  1329.   V7NodeFlagBit 4096  POINT
  1330.   V7NodeFlagBit 32678 REDIR
  1331.  
  1332.   To get the same functionality as previous versions of timEd, you have to
  1333.   add:
  1334.  
  1335.   V7NodeFlagBit 16    CM
  1336.  
  1337.  
  1338. * The echotoss.log file is now updated every time a new message is created.
  1339.  
  1340.  
  1341. * There is now a command to highlight lines in the current message that
  1342.   contain a certain keyword.
  1343.  
  1344.   The command is READsearchcurmsg.
  1345.  
  1346.   If you execute it, timEd will ask for a keyword to look for. All lines
  1347.   containing the keyword will be highlighted, and the part of the message
  1348.   containing the first match will be shown, with the first match centered.
  1349.  
  1350.   Default key assignment is F2.
  1351.  
  1352. * Reported bugs fixed.
  1353.  
  1354.  
  1355. 1.10.b4
  1356. -------
  1357.  
  1358. * Fixed memory leak with 'copy line' action in internal editor (edit.c,
  1359.   line 774).
  1360.  
  1361. * Fixed ctrl-f function writing double messages in JAM netmail area.
  1362.  
  1363. * Fixed some problems with FD nodelist lookup.
  1364.  
  1365. * Fixed memory leak with *.MSG message deleting.
  1366.  
  1367. * Increased length of input fields in dialog boxes for file attaches,
  1368.   import file, write file functions.
  1369.  
  1370. * Fixed problem with leading spaces in SquishCFG keyword in timEd.cfg
  1371.  
  1372. * TimEd will now delete the temporary files used for EXESPELL, EXECRYPT and
  1373.   EXESIGN.
  1374.  
  1375. * The ctrl-f (file request) function now also checks the subject line for
  1376.   filenames.
  1377.  
  1378. * Fixed 'hotkey clash' ('m' was used twice) in Find -> ALT-O -> Action.
  1379.  
  1380.  
  1381. 1.10.b5
  1382. -------
  1383.  
  1384. * Fixed a problem with correct recognition of the CHARSET kludge.
  1385.  
  1386. * Fixed a problem with timEd exiting when replying to a personal message in
  1387.   a personal mailscan (some other situations as well).
  1388.  
  1389. * The 'variables' that can be used for external programs (like [areatag],
  1390.   [msgno] etc) can now also be used when entering the name of a file to
  1391.   write a message to. This allows you to write messages to files called
  1392.   'artware.msg', or 'artware.100' and so on.
  1393.  
  1394. * Fixed a memory leak when entering messages to internet.
  1395.  
  1396. * Internet addresses/attaches are now correctly shown when writing a
  1397.   message to file.
  1398.  
  1399.  
  1400. 1.10.g1
  1401. -------
  1402.  
  1403. * Fixed a bug in the MSGID generation routine.
  1404.  
  1405. * Fixed a memory leak that could occur when generating CC:'s.
  1406.  
  1407. * Removed Imail config import routine. It was outdated, and the new Imail
  1408.   versions have the ability to export an area include file for timEd.cfg.
  1409.   If you use _that_, you won't have any problems when a new Imail version
  1410.   is released! There are new Imail releases pretty often, so timEd was
  1411.   always lagging behind. This Imail feature solves that problem once and
  1412.   for all.
  1413.  
  1414. * Fixed a bug in the 'write message to file' routines. It would in some
  1415.   cases show incorrect message attributes.
  1416.  
  1417. * Fixed a problem with LanServer printer ports (timEd would always indicate
  1418.   the printer was 'not ready', even when it was ready).
  1419.  
  1420.  
  1421.