home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Datafile PD-CD 4
/
DATAFILE_PDCD4.iso
/
utilities
/
utilsf
/
lineeditor
/
!ReadMe
next >
Wrap
Text File
|
1996-09-04
|
23KB
|
508 lines
LineEditor Module release 2.71
==============================
** Source, binaries and documentation **
** Copyright (C) Oliver Betts 1994,1995,1996 **
This software is provided as is - it has been tested to a reasonable extent,
but probably has a few lurking bugs. I take no responsibility for any loss
or damage, directly or indirectly caused.
UNIX is a trademark of AT&T; 4DOS is a trademark of JP Software Inc.
Incidentally, I highly recommend 4DOS if you have to use DOS.
Versions with a letter suffix are test versions and may only be distributed
with express permission from me. Other versions may be distributed freely
provided all files are supplied intact and that no profit is made. You may
bundle it with other freeware software provided these distribution
restrictions are met, but please make sure you're supplying the latest
version. If you want to distribute it in some other way, get in touch.
*****************************************************************************
This module started out as some modifications to version 2.30 of Richard K.
Lloyd's LineEditor module, to make it work better with TaskWindows
(specifically to use the same *FX4 and *FX 220-228 settings as the Wimp).
However, RKL seems not to respond to email or snail mail, and so not having
his permission to release my modified version, I have entirely rewritten the
module. In doing so I have fixed a number of bugs which were in the original
and added many extra features, some of which were inspired by tcsh (and other
UNIX shells) and 4DOS (for DOS!).
I'm still actively working on this program, so watch out for new versions.
Please let me know if you find any bugs or problems (read this file first
though!). I'll release the source with future versions.
Files in this release:
!ReadMe - this file
LineEditor - the module
RebindKeys - obey file to change key bindings
Actions - a list of the actions which can be bound to keys
DfltKeys - default key bindings
OllyKeys - the bindings I use -- provided as an example
Rebinder - used by RebindKeys -- don't run directly
Zap131 - patch file to upgrade Zap 1.30's use of LineEditor's SWIs
The keys file has a very similar layout to the !Zap keys file. The
mechanism for rebinding is a bit nasty, and will be improved when I get
some spare time.
For a list of the default key bindings, load the LineEditor module and type
"*Help Editor".
Random note: Ctrl-N is now mapped to Next-line (same as cursor down), and
similarly for some other useful Ctrl-<letter> combinations. Unless bound
otherwise, Ctrl-Shift-<letter> is bound to "vanilla", which will input
Ctrl-<letter>. Alternatively, "quote" the keypress, e.g. Ctrl-Q Ctrl-N.
Use with Dom Symes' !Zap (see also !Zap's !Help file):
* To use function keys and Control + key you need to type Ctrl-Q first to
"Quote" the key - otherwise !Zap will process the key. The cursor keys,
TAB and PageUp/PageDown are passed through and so don't need quoting.
!Zap 1.20 will also pass most Ctrl-Letter combinations through, although
it won't pass through keys that have certain actions bound to them (eg.
QUOTE). See the !Zap documentation for a complete list.
* COPYing works - activated by the command COPY which is bound to COPY and
Shift-COPY by default. From !Zap 1.20, pressing Escape during COPYing will
stop the copy, but not abort the line. Press Escape again to abort the
line. LineEditor behaves in the same way outside of TaskWindows.
* TaskWindows under RISC OS 2: The TaskWindow module supplied with !Edit on
RISC OS 2 Application Disc 1 (v 0.03) won't work with !Zap - you need the
one supplied with the C/Asm DDE (about 0.29) or above. 0.03 only works
with !Edit 1.00 and not very well. The RISC OS 3.1 TaskWindow module
works best of all, but you can't legally get it without having RO 3.1...
* With the default keymap supplied with !Zap 1.10 and 1.20, Enter on the
numeric keypad acts like Ctrl-J in TaskWindows, ie the line isn't stored in
the history. You can make it act like Return by altering the appropriate
line in the keys file from:
kENTER &166 RETURN
to:
kENTER &166 CHAR &0D
which makes Enter behave like Return in TaskWindows, and in other modes.
* Due to a minor bug in !Zap, Ctrl-Q Ctrl-@ in a TaskWindow gives an `R',
rather than setting the mark. A work around is to use Ctrl-Q Ctrl-SPACE
instead in TaskWindows.
Use with Acorn's !Edit/!SrcEdit:
* !Edit/!SrcEdit TaskWindows don't "understand" the codes to move the cursor
left and right (&08 and &09) so things don't work terribly well.
* My version and RKL's seem to work equally well/badly (simple recall and
filename completion work okay).
* I don't think it's possible to work around not having VDU 8 - get !Zap if
you want to use TaskWindows much - it's much faster too!
Use with Alun Jones' !TaskShell:
* TaskShell 1.21 has very full VDU support (since it runs full screen and
uses the OS VDU calls). It works well with LineEditor, except that
Ctrl/Shift + Tab combinations don't work as expected (Alun has acknowledged
this a due to a shortfall in TaskShell's emulation of the keyboard system).
* Unfortunately, TaskShell doesn't currently support cursor copying.
* LineEditor doesn't send codes to change cursor shape to TaskWindows (as
they are ignored by most servers and just slow things down a bit). With
TaskShell, they would change the cursor shape, but it's not easy to tell
the difference between a TaskShell and a TaskWindow.
Use with Guttorm Vik's !StrongED:
* Recent versions of StrongED (I've tested with 4.11beta2) have improved
TaskWindow support, and support all the codes LineEditor requires.
* !StrongED support COPYing in TaskWindows, in much the same way as !Zap.
Use with Brian Brunswick's !VMode:
* VMode is a graphical desktop TaskWindow server. It's a bit slow though.
Version 1.5 seems to work with LineEditor so long as you don't want to
use the cursor keys, the function keys, Tab, etc.
That's all the TaskWindow servers I am aware of. If you know of any others,
let me know and I'll check them out and add them to the list.
Use with RISC OS 2:
* I've added code to versions 2.34 and above to read the task handles of
TaskWindows under RISC OS 2, so local history buffers should now work.
* The TaskWindow modules supplied with RISC OS 2 and the Acorn C DDE (0.03
and 0.29 anyway) have a problem - if LineEditor is loaded, closing a
TaskWindow doesn't release the memory allocated to the task. This would
seem to be a TaskWindow bug [it occurs if you soft-load 0.03 or 0.29 with
RISC OS 3.1, and with RKL's version]. My best advice (other than to get
RISC OS 3.1) is to reduce the next slot before starting a TaskWindow and
not to close task windows that you might want again.
* There's a problem with the cursor keys producing symbols rather than being
interpreted as cursor keys with some setups when using TaskWindow 0.29.
Comments and suggestions are greatly encouraged - email will get a reply (if
I can get through), snail mail will eventually, but don't hold your breath.
Please try to give as much detail as possible in bug-reports - steps to
demonstrate the bug from loading in the module are very helpful indeed.
Thanks to Andy Hayward, David Moore and Dom Symes for testing and comments.
Also to Clive Jones for suggesting how to find the current task's handle
under RISC OS 2 (though his idea didn't work ;) ). Also, thanks to everyone
who's reported bugs and problems, particularly Ian Palmer and Nick Craig-Wood
who've been especially diligent. And to Ben Summers for supplying some
(slightly buggy) code for creating a dynamic area and maintaining a heap in
it, and to OSLib's headers for telling me how to delete a dynamic area once
I've got one. And Mark Wooding for some code.
Note: Mantis' net feed is overloaded at present, so I'm not currently
putting files on ftp.mantis.co.uk and I've disabled the auto-mailer.
Our feed is due to be upgraded during October 1996, so the next 2
paragraphs should then be true again.
You can obtain the latest ve