
	       StrongZap, a Zap syntax colouring mode
	       ======================================

1.0 Features
============

Here is StrongZap, a !Zap syntax colouring mode for !StrongHlp files.

As well as the syntax colouring this mode supports the Window-wrap and
SoftWrap options.  It has a button bar which facilitates the process of
creating hyperlinks.

The module contains some enhancements to the cursor keys so that
when they are used in combination with the shift key they behave in a
more appropriate manner than when is in text mode.  These routines have
been stolen from Martin Ebourne's C mode and are documented by him in
his own directory.  Basically they make the shift-cursor combinations
pause more frequently and more intelligently step through the code.
Martin has kindly given permission for his code to be used.

Although the author welcomes correspondence concerning this mode, he
makes no claim that it is bug free and, it is not guaranteed to perform
any particular function.  It is to be used entirely at one's own risk.

This is Freeware, and may be distributed freely provided that all the
files remain intact.

2.0 Installation
================

Copy the !StrongZap application into a suitable position in the "3rdParty"
directory inside the !Zap application.

In the file called "External", in the directory "!Zap.Options.Default" or
wherever the variable Zap$External points to, add lines as follows:

<Zap$3rdParty>.Tyler.!StrongZap.StrongZap Obey <Zap$3rdParty>.Tyler.!StrongZap.!Setup
	Strong
	-
	STRONG_FLAGSTOGGLE		&8017
	-

...and lines like:

&500	&FFF	\#\*.HelpData.\#\*	+Strong
&500	&FFD	\#\*.HelpData.\#\*	+Strong
&500	&FFF	\#\*.!Manuals.\#\*	+Strong
&500	&FFD	\#\*.!Manuals.\#\*	+Strong

...in your keys file.  !Zap will then need to be restarted.

3.0 Features
============

SoftWrap
~~~~~~~~
The SoftWrap option allows different cursor editing options to suit the
taste of the user:

 * The 'Physical' option affects whether ctrl-cursor operations work on
     physical or logical lines (with SoftWrap only).
 * The 'Confine' option affects whether cursor movement is confined to
     the region containing text (currently with SoftWrap only).
 * The 'Smart' option affects whether shift-cursor operations work using
     Martin Ebourne's intelligent cursor movement code.

It uses SoftWrap mode as a minor mode to perform its soft-wrapping action.
This is loaded, if needed, in order to use the fuctions it provides.

Command
~~~~~~~
FORZAP_FLAGSTOGGLE <word>

This has the same syntax as the WFORMAT_TOGGLE command.  It ticks menu
entries if it is attached to them.


4.0 Problems
============

So far the shortcomings are that "#"s and ";"s after "#"s are not
coloured in a particularly pleasing manner.  There are also a large
number of ideosyncracies with the colouring of any subsequent commands.

There is a need for more logical colours, in this mode which I hope to
address at some point.  A number of logical colours currently play
multiple roles.

The mode is sensitive to the last character of the file being a line
feed, and will not colour commands on the last line correctly if this is
not present.  This is common in some existing StrongHelp files.


5.0 History
===========

v0.12 - (15-Dec-97)
     * All code now present centrally in the latest Zap ripped out.

v0.11 - (24-Jun-97)
     * ZapSpell support added.  The contents of "#" comments, {...} and labels
	referred to after a => symbol are not spell-checked.

v0.10 - (12-May-97)
     * SoftWrap added, with associated cursor editing mode options. Note
	that this needs the latest version of SoftWrap mode to work properly.

v0.09 - (15-Mar-97)
     * Buttons menu added.
      * Window wrap added.
      * Wrapping problems at line ends resolved.

v0.08 - (01-Mar-97)
     * Buttons support added.

v0.07 - (07-Feb-97)
     * A problem with links at the start of lines resolved.

v0.06 - (29-Jan-97)
     * The problem (introduced in v0.05 with '='s and '-'s being miscoloured in
	"< ... =>" structures resolved.

v0.05 - (28-Jan-97)
     * The "<" exceptions ("<=", "<-" and "<<<<"(!?)) are now ignored by
	the colouring routines.

v0.04 - (06-Jan-97)
     * The Zap command "OLEFILECHANGED" was added in error and then
	quickly stripped out again (apologies).

v0.03 - (13-Dec-96)
     * Extensive revamp to improve functionality prior to release on
	the main web site.
      * Commands are now parsed inside {...} structures.
      * More sensible interpretations of many structures beginning with
	"f".

v0.02 - (09-Dec-96)
     * Fix for bug involving logical line numbering.

v0.01 - (22-Nov-96)
      * Very early release as a RFC to Gerph and a few others.

Enjoy
__________ 
 |im |yler  The Mandala Centre - tt@cryogen.com - http://www.mandala.co.uk
