ZapMJE 0.76 changes file
 Martin Ebourne, 1996

Changes since 0.70 (Released with V1.30 of Zap)

Maintenance of the module transferred to Tim Tyler:

   This is for an indefinite period, starting November 1997.  Queries,
    bug reports, wishlists, etc concerning ZapMJE should currently be
    addressed to him at tim@zap.uk.eu.org.

Miscellaneous improvements:

   Rearranged and partially re-wrote the mode independant parts for maximal
    code sharing. This also means that new modes which take advantage of
    compilation, commenting, etc., can be added almost without writing any
    code.

   Updated the default colours to be 24 bit. This means that the default C
    colours are sensible at last, although naturally you need a 256+ colour
    mode for that to be the case.

   Added MJE_COMMENT

C improvements:

   Recoded the reserved word detection in the syntax colouring. Reserved
    words (especially long ones) can now be added much more easily and it
    will also allow easier splitting of the single C/C++ mode into separate
    C and C++ modes. Even better, a speedup of typically 30% on the overall
    scanning time was obtained. (Yes I know I shouldn't have used a linear
    search in the first place but it was a rush to get the syntax colouring
    ready back then.)

   Split the C/C++ mode into separate C and C++ modes. Syntax colouring is
    now appropriate for the mode in use.

Changes since 0.71 (Floating around generally)

   Changed two bits of code to make the C syntax colouring StrongARM
    compatible, since DEC altered the behaviour slightly.

   Added colouring of 0x123 in assembler mode.

   Added 'explicit' C++ reserved word, which has recently been added to the
    draft standard.

Changes since 0.72 (Here and there)

   Got internal C code support working.

   Re-wrote MJE_IFMODE in C to work with, and only with, mode names.

   Re-wrote bracket matching in C. Now works on all modes, doesn't miss
    characters when using the copy key and copes with brackets in quotes.

   Wrote bracket highlighting (as in paren mode for Emacs).

   Wrote Java mode

   Indenting re-written in C.  It uses the existing braket matching code
    to some extent, when finding the indentation of the matching brace.

   Indentation now supports indentation with tabs: these are used if
    the specified indentation is given as a negative value.  Mixed tab-
    and-space indentation styles are (mostly) allowed as well.


TODO:

Upgrade C redraw to do syntax parsing
Re-write compilation
Re-write swap-to-header
Re-write config
Add auto-setting of indentation flag (which also test to see if tabs are
  being used or not)

Write exception handling for C
Finish Zap C veneers and add any new stuff
Sort out C veneers for proper calling of base mode entry points
Bracket highlighting: pascal redraw & assembler eol

Buy a strongarm


INDENTING:

block-open        +0      - line starting with {
block-intro       +2      - line after {
block-close       +0      - line starting with }

arglist-intro     +2      - line starting with (
arglist-cont      +2      - line after (
arglist-close     +0      - line starting with )

case-label        +0      - line starting with case ???:
case-intro        +2      - line after line starting with case ???:

access-label      -1      - line starting with private: or public:
label             -1      - line starting with label:

comment-open      +0      - line starting with /* or //
preprocessor-open 0       - line starting with #
