home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d7xx
/
d770
/
uedit.lha
/
Uedit
/
Ustar.LZH
/
UstarDoc
< prev
next >
Wrap
Text File
|
1992-08-07
|
82KB
|
1,634 lines
UstarDoc
Documentation for Ustar v0.90. 12/11/87.
Ustar is a configuration file for Uedit and requires Uedit V2.3c
Ustar is Copyright (c) 1987 by Kurt Wessels, 917 N. 87th, Seattle, WA 98103
"Amiga" is a registered trademark of Commodore-Amiga, Inc.
"WordStar" is a trademark of MicroPro International Corp.
See Uedit-Policy for how to register and support Uedit.
-----------------------------------------------------------------------------
Ustar Distribution Policy
Ustar is freely distributable. It may be included with any Uedit files/disks
. It may be posted to bulletin boards, included on public-domain/shareware
disks, and generally be distributed for no charge or a small handling fee.
All rights reserved. Contributions of freely distributable software or $ are
welcome.
If you want to be informed of updated versions of Ustar, send an SASE to me;
send a disk and postage if you want the latest version.
You may modify the Ustar files and excerpt from them in any way for your own
use, but do not then redistribute them as Ustar. Send any enhancements,
bugs, ideas, etc. to me and I will consider them in later releases.
Ustar is provided as-is. There are no warranties or guarantees of
performance. I cannot be responsible for any damaged data or files. Use at
your own risk!!!
-----------------------------------------------------------------------------
Table of Contents
Notices (above)
Ustar Distribution Policy (above)
Table of Contents (this)
Editorial
Files comprising Ustar
About Ustar
Important Points
Getting Going (System Setup)
Learning to use Ustar
Conflicts with other programs
Enhancements compared to WordStar
Features You Should Know About:
Click-loading
Reformat
Dot Commands
Repeat and Learn
Differences & Details compared to WordStar
-----------------------------------------------------------------------------
Editorial
Be an Amiga militant! Call, or better yet write to every company you can
think of whose software you like or use on other machines, and ask them to
port it to the Amiga. Support Amiga dealers. Send in money for the
shareware that you use (esp. look at your startup-sequence and c:directory!)
and write the authors as well with suggestions of improvements etc. (unlike
many commercial companies, these folks will often listen and even write
back). Attend and support your local user groups and Amiga bulletin boards.
The very best advertising for this machine is for people to be AWARE of it
and to actually SEE and USE it. It invariably blows them away! Take your
machine to work, to parties, and anywhere else there's people and somewhere
to plug it in. Then proceed to astound everyone and kick Amiga sales upUpUP!
-----------------------------------------------------------------------------
Files comprising Ustar
When archived, name it Ustar90.arc (for ZOO, Ustar90.zoo).
Any distribution of Ustar MUST include these unaltered files:
UstarData! Compiled configuration file
UstarDoc Documentation - this file
UstarHelp! Help file
ASCII Chart/table
UstarTutor Intro: how WordStar evolved; how to quickly learn it
PrintTest Demos dot commands and print controls
UstarREADME Brief "how to run" and last-minute info.
UstarKeyHelp Data file for Teach Key mode (teacheswhat each key does)
MakeARCUstar A batch file, to make ARC file via: execute makearcustar
Unless there is no room on your disk or ARC, these should also
be included:
UstarConfig! Configuration file (source)
UstarDetails Low-use reference info on Ustar
and you ought to include these files:
UeRef A summary of Uedit commands, functions, flags, variables.
Promo Promotional items to help sell Uedit.
AboutUE&US General info
executable files that are used by a few Ustar commands (other than
standard AmigaDOS commands) are:
AddBeep Part of DispBeep.arc - to beep instead of flash display
RemBeep "
Beep-ReadMe "
avail Shows memory usage
xe Calculator
(various) MicroSpell spell checking program & dictionaries
(not usually included; available on Fish disk #101)
If it is the whole-disk distribution of Ustar, rather than just the
files, these will also be included:
icons for each doc file:
UstarDoc.info UstarHelp!.info UstarTutor.info Promo.info
UstarREADME.info UstarDetails.info UstarConfig!.info
PrintTest.info UeRef.info AboutUE&US.info
tools for executing icons from workbench:
more CLIcon
custom icons:
disk.info Ustar.info
Along with all of the current distribution of shareware Uedit,
including the UES executable Uedit shareware program and
the blank icon NoName.info.
-----------------------------------------------------------------------------
About Ustar
Ustar is an emulation of the WordStar command key set and most of its
functions. (I wrote to both NewStar Software and MicroPro; they apparently
aren't planning on porting WordStar to the Amiga.) WordStar here may mean
either version 3.3 or the newer WordStar Professional Release 4. Previous
versions of Ustar supported v3.3; this one adds many v4 capabilities and
keys. WordStar here is also abbreviated to WS; notes on the old/new versions
may be abbreviated to WS3 or WS4.
Ustar is a configuration file that is used with Uedit, a programmable
shareware text editor by Rick Stiles. See the Uedit files for more info. Be
sure to read Uedit-Policy for how to register. By registering your Uedit,
you can learn more about it, support an excellent piece of software, and be
able to fine-tune it to your own needs.
Previous versions of Ustar provided some support for Scribble! key
commands. As of this version, this is no longer true; I may write a separate
Uedit configuration later for this, but don't hold your breath. In the
meantime, you can of course remap keys to whatever you want.
Since this is an emulation of WordStar, anyone used to the standard
Uedit configuration will be totally at a loss; most keys were remapped to
avoid conflict with WordStar keys, and the way that the standard Uedit does
some things (e.g. Find/Replace & Blocks) is completely different than Ustar.
However, most of the capabilities of the standard Uedit configuration are
already present as defined key commands, and with Learn mode and custom
commands available, everything is possible. When you register and get the
Uedit manual, keep this in mind - trying things directly from the manual
won't usually work, you will have to translate into Ustar keys/commands.
Since there is no editing vs. non-editing mode, it feels different
initially than WordStar. However, experienced WordStar (or compatible
command-key editor/word processor) users should feel at home very quickly.
Ustar is more friendly and easier to learn than it used to be. Menus
are better-organized and now include virtually every key, due to Uedit's
added submenu capability. The Help key still shows you all of the commands,
organized differently than the menus. The new Teach Keys mode will tell you
what each key or menu selection does when pressed, without performing any
actions.
I've written and included a tutorial to help teach you the basics of the
WordStar command set. This should get you going quickly; then you can learn
more about it as you use it productively. See the UstarTutor file, or just
choose it from the System Help menu. For more info, any book on WordStar, or
a friend who knows it, can help you learn more about it (but keep differences
in mind).
Not all commands and operations are noted or discussed in this document,
primarily only those that are not part of WS or are different than WS.
Note that I implement the STANDARD WordStar command-key set that uses
the control key sequences. NONE of the function key and numeric (cursor)
keypad assignments that were tacked onto the Mess-DOS version of WordStar are
implemented. However, they are available in a section of the UstarDetails
document and can be added to UstarConfig! and activated if desired.
I have kept most of the ALT keys, virtually all of the left and right
Amiga keys, and a couple of the function keys available for use in assigning
your own temporary or permanent commands to them, since they are easy to use
and remember.
If you have an earlier version of Ustar, see the Revision History
section in UstarDetails for notes on what has changed.
-----------------------------------------------------------------------------
IMPORTANT POINTS
Shareware
After Uedit version 2.0, Uedit was split into shareware and non-
shareware versions, the only difference being the shareware version cannot
compile a Config! file or new commands (and is smaller). This document is
oriented towards the non-shareware version, in that it often mentions
recompiling, or changing/adding commands. Keep this in mind - and register
your Uedit soon.
Note - as of Uedit V2.3c and Ustar v0.90, the maximum number of files
open at once has been limited to 5. This is an attempt to encourage
registration of Uedit. It is easily changed once you have registered -
search in UstarConfig! for the 3 lines with !SHARE in them and change as
instructed, then recompile UstarConfig!.
Key Legends
Commands that use keys which have two legends on their keytops may show
in menus, help file, and here as either legend. They mean the same thing, I
just use the more descriptive one.
For instance, the Alt-? key sequence brings up the About information.
This means to press an Alt key and the key with ? on it. It does NOT mean to
press an Alt key, a Shift key, and the ? key. In other words, Alt-? is the
same as Alt-/. In the same way, Ctrl-= means the same as Ctrl-+.
Internally, Uedit commands always use the lowercase keytop ID.
There is only one exception to this "no shift" rule, involving a two-key
WS4 sequence noted in details farther below.
Amiga Keys
The "LeftAmiga" key, shown as "L-" prefix in menus, is the key to the
left of the spacebar. Some A500/A2000 machines have this relabeled with the
Commodore "C=" symbol. It is functionally the same key.
-----------------------------------------------------------------------------
Getting Going (System Setup)
The following is oriented toward CLI users. Workbench-only people can send
me $5 (or a disk and return postage) for the shareware version of the Uedit
and Ustar system that is all set up to be used via icons from the Workbench.
First, make a backup of the disk or archives. You will probably be changing
things to suit yourself, and will need the original files for distribution
and reference.
The shareware version of the executable Uedit program is called UES. See
Rick's Uedit documentation for complete info. Briefly, Uedit is configured
(told what to do) by a separate file. The source code (readable commands)
for the configuration are in a Config! file. This file is compiled by Uedit
to a more compact Data! file, which is what it actually uses. The Config!
file would normally be compiled only after you have made some change to it.
As distributed, the UstarData! file is provided. As an example, to run
Ustar, CD to the disk or directory its files are in, and do:
run ues -dUstarData!
Note that Ustar is distributed along with the original Uedit configuration;
to insure you are running Ustar rather than standard Uedit, give the command
above.
If no UstarData! file is present, compile a Data! file via:
run ues -cUstarConfig!
If you have room on your Workbench (boot) disk, do:
copy UstarData! s:Data!
Then all you need to do later to run Ustar is: run ues
You can specify a list of files to load upon startup, e.g. load 3 files by:
run ues MyFile MyOtherFile YetAnotherFile
For maximum flexibility in running other commands within Uedit, always start
it from a CLI window rather than the Workbench; see Uedit documentation for
details.
-----------------------------------------------------------------------------
Learning To Use Ustar
If you are not familiar with WordStar, read UstarTutor and play with Ustar as
it discusses it. This will get you going at a basic working level quickly.
If you are familiar with WordStar, just use the regular WordStar commands to
do editing actions. See the rest of this and other documents for details on
differences.
The best way to learn it in any case is just to use and play around with it.
If you don't know or forget how to do something, there is a lot of help
available. First, the pull-down menus list virtually every command. Second,
the Help key (or ^J) will bring up the UstarHelp! file, which also lists all
commands along with general information. Third, there is a TeachKeys mode,
where pressing a key sequence doesn't do anything except describe itself. To
activate this mode, choose the System - Help - Teach Keys menu selection, or
Alt-T. Lastly, there is this and other files that go into detail about the
commands.
-----------------------------------------------------------------------------
Conflicts With Other Programs & the System
PopCLI
PopCLI (by The Software Distillery) can conflict with Uedit. PopCLI's
default "hot key" for popping up a new CLI window is LeftAmiga-ESC. This is
the same key used by Uedit as a general purpose "abort" key. PopCLI always
sees the key sequence before Uedit, so you can never halt a Uedit action with
it.
There are two ways around this. The new version of Uedit has added
RightAmiga-ESC (and a few other keys) to do the same abort as LeftAmiga-ESC.
And, the new version of PopCLI, version III (available on Fred Fish disk
#84), lets you remap the hot key, e.g. remap PopCLI to use LeftAmiga-TAB
via: "run popcli 300 66".
Mach
The mouse speedup program called Mach, v1.0 by Brian Moats, conflicts
with the Alt-Function keys. Only the Alt-Function keys are affected, i.e.
Alt-Ctrl-Function keys and other combinations are OK. It "eats up" the
keystrokes so Uedit never sees them. I've found no way to prevent this
except by not running Mach. I wrote him about this; in the meantime, I have
mapped the RightAmiga key to do the same thing as the Alt key for the few
Alt-Function key combinations I do currently use.
FuncKey
The function key macro program FuncKey, v1.01 by Anson Mah (available on
Fred Fish disk #89), conflicts with the Ctrl-Function keys if it is active.
In addition, any function keys you have defined in it will override any
defined in Uedit (undefined ones are passed through untouched). If you
switch off FuncKey's actions with the "FuncKey OFF" gadget, there is no
conflict with any keys. Mr. Mah has indicated that the next version of
FuncKey will fix the Ctrl-Function key problem and perhaps also allow
adjusting its priority level.
SnipIt
There is a small potential conflict with SnipIt (a general purpose
system cut/paste utility). SnipIt uses the Left Amiga-Mouse button for
clipping text, so if it is active, you can't use lAmiga-buttonDown or lAmiga-
buttonUp - Uedit won't ever see them. You should also know that you can't
cut text out of Uedit with SnipIt, but you CAN paste text (clipped from a CLI
window or other CLI utility) into Uedit using normal SnipIt functions.
Amiga System
Uedit now will look in the current directory, as well as S:, for its
important files. In addition, when you register Uedit, you get a utility
that lets you use a U: directory instead of S:. See UstarDetails for more
info on files and programs Ustar uses.
-----------------------------------------------------------------------------
Enhancements compared to WordStar
General
It runs on the Amiga!
All the advantages of Uedit:
o You can edit up to 30 (or even more) documents at once.
o Multiple split-screen windows into the same or other documents.
o Well-supported shareware
o Completely reconfigurable Uedit environment.
o You can add new commands anytime, and save if desired.
o Learn any sequence of keys and play it back.
o Toggle between interlace/non-interlace anytime.
o Customizable help file.
o See Uedit docs for further info
You can place the cursor, or mark and manipulate blocks, with the mouse as
well as the keyboard.
You can use the arrow keys as well as the standard control-key diamond. The
arrow key functions are a fusion of the way various other Amiga editors work.
Most commands are listed in the pull-down menus. Those few that aren't there
are listed in the UstarHelp! file, which is brought up when you press the
Help key.
The status of most flag (toggled) type items (e.g. overwrite/insert mode) are
shown in the pull-down menus. They are distinguished from other menu items
by having a background color that matches the background color of your
document. If an item has a check-mark next to it, it is active (it is on).
Below, I have put an asterisk next to the keys that are not standard WordStar
keys - those added by me.
Block commands
Normal block commands are implemented, and new capabilities added:
^KU *, ^U Undelete/Undo. This has several uses.
o Recall the last word(s) or line(s) deleted. If you delete a bunch
of words/lines without moving the cursor, this recalls them all.
If you move the cursor then delete a word/line, you can only recall
that item. In other words, each deleted item is added to the
recall buffer, until you move the cursor and do a delete elsewhere.
o Recall the last block deleted. Only one block is kept. The same
scratch buffer is used, so doing a block operation will wipe out
any word/line deletes you may have had - unless you are in Block
Column mode, which uses a different buffer.
o Use with ^KG to transfer blocks between buffers (documents). Mark
the block and get it with ^KG in one buffer, switch to another
buffer and insert it with ^KU. So, it acts something like Block
Copy (^KC) but between buffers.
^KG * Get. Get a block into the Undo buffer. This is needed so you can
get a block marked in one file without altering that file, and copy
it into another file via Undo since normal WS block commands work
within the current file only.
^K] * Speaks a block (Say command must be in c:, and libraries available).
^KW Write. You can print a block by using this normal Block Write
command, then giving the file name of "prt:" (to print through
preferences) or "par:" or "ser:" (to print direct to ports),
instead of regular disk & file names. However, printing in this
way WILL NOT properly interpret any Uedit printer control codes.
Use the code I defined for printing a block, ^PO, in this case.
Also, printing in this way won't interpret any Ustar dot commands.
Mouse * You can do many block actions with the mouse.
You can highlight a block (instead of using ^KB and ^KK):
o Highlight a block of text by pointing to the start of it,
holding the left mouse button down, moving the mouse to the
end of the block, and releasing the button. This is now much
enhanced: automatic scrolling now occurs when the mouse is
slid up to the top or bottom of the screen. It has also been
changed: the block is no longer dynamically highlighted as
you move the mouse around the screen. The version of the
normal-buttondown command that does dynamic highlighting is
still in the UstarConfig! source file, but inactive; if you
prefer this feature, you can use this other version, but at a
great loss in scrolling speed.
Once a block is marked, via mouse or keyboard:
o Move a block (equal to ^KV) by pointing the mouse to the place
where you want the start of the block to go, holding down one
of the Shift keys, and clicking the left mouse button.
o Copy a block (^KC) as above but with an ALT key.
o Delete a block (^KY) as above but with Shift + ALT key.
^KI Columnar overwrite/insert mode toggle. In the default mode,
columnar block Move/Copy pushes aside existing text, and columnar
block Delete deletes (cuts out) text. In its other mode, Move/Copy
overlays existing text, and Deleted blocks are space-filled instead
of being cut out.
^PO Print Block (Printer cOpy). Prints the highlighted block through
the current printer choice.
^KM Block Math - mark a column, row, or block of numbers, this will add
them all up (or subtract if leading minus sign present).
Files & Buffers
There's no "No File Menu" ("Not Editing Menu") mode in Ustar; thus some
commands, esp. ^K, work differently; an attempt was made to maintain smooth
operation, consistency, and stay close to WS standards.
The terms "files" and "buffers" are used somewhat interchangeably. A buffer
in Uedit is normally the in-memory copy of a disk file that you loaded in.
"File" may mean only "disk file" to some people. I generally refer to
buffers, but may also refer to files where it seems more appropriate.
F1, S-F1, F2 *
F1 switches to the next buffer, if you have more than one file
loaded into Ustar. When it gets to the last buffer, the next F1
takes you back to the first file. In other words, this "visits"
each file you have loaded. Shift-F1 does the same thing but goes
through the files in the opposite order - switches to the previous
buffer. F2 is simply an equivalent to shift-F1 for ease of use.
See also F3 below.
^KL Logged disk/directory. (Current Directory). Default is whatever
the system directory is where you started up Ustar. Entering a
path here will use that path in all ^KD file opens and other file
work, if no other path is specified in the filename.
DON'T use this if you started from Workbench!! (see Uedit docs).
Does NOT affect the directory specified in mouse-loading operations
(see below).
^KD Document Open. This acts like the No-File D or N (open document)
functions of WS. You specify a file name, optionally including a
path. If the file is found it will be loaded; otherwise an empty
buffer will be opened, with the name you gave it. If no name is
specified, nothing occurs. Unlike WS, ^KD doesn't do anything with
(doesn't save to disk) the buffer you were in prior to giving this
command; that file remains in its own buffer and you can switch
back to it as usual with F1 or F2 - use ^KS, ^KQ, ^KT, or ^KX to
save a file to disk.
^KS Save/Resume (Quicksave). Save document to disk. However, it is
smart: if you haven't changed the buffer, it won't save it, will
tell you it is unchanged since last save. This eliminates waiting
for unnecessary disk actions to finish. Also, the cursor remains
where it was - no need for the old WS3 ^QP afterwards.
^KT * Total Save. Saves all changed buffers to disk without asking.
^KQ Quit Buffer. If buffer has changed, it tells you so and asks if
you want to save it (to the current filename only). It then frees
the buffer.
^KZ * Zafety (?!!). AutoBackup toggle. Unlike WS, you can choose to
have or not have backup files kept. This toggles this mode.
Currently, I have it default to no backups when Ustar started up;
you can easily change this by changing the default setting at the
start of UstarConfig! and recompiling it. Backups are different
than WS - see below.
^KA * save As. Use to save buffer as some other name. This leaves the
current buffer name and "changed" flag as is, and saves the buffer
to the specified filename. It gives an initial default of the
current filename. Typing nothing will abort the save. To save
name shown, type its first character.
^K= * Read-Only toggle. This will disallow changes to the current or
buffer. Useful for reference documents so you don't accidentally
^OP change them, for example the Help file - press Help and try
changing it.
^K\ * Icons toggle. If on, when you save a file, an icon will also be
saved with it. There must be a "template" icon file in your s:
directory called "NoName.info" for this to work. If a backup file
is also made, and this icon toggle is active, an icon is also saved
with the backup file.
^KX eXit Ustar. Same as closebox gadget. If any buffers have changed,
you have a choice of saving all changed buffers, or just saving
user-selected ones; then it verifies that you want to quit. So,
you can use this for selective mass saving of files as well as
quitting. See also ^KT. For a very dangerous quit, do SAC-
closebox (or SAC-F1) - it will not ask, you will lose all edits
regardless of changes, quits immediately. These dangerous quits
aren't listed on the pull-down menus, on purpose.
^KP Print file. Like most Ustar/Uedit commands (where it makes sense),
you can repeat this any number of times you want; very useful in
printing things like labels. Only if ^PP Print Via is set to 2 or
3 will any Uedit/UStar printer control codes be properly
interpreted.
Rename The file manipulation commands ^KE, ^KO, ^KJ, and ^KP currently
Copy work with buffers only, not disk files. Note that these work with
Delete the current buffer, not a named buffer or file, i.e. none of these
Print commands ask for the source file name. Also note that ^KJ is the
same as ^KQ.
Alt-O * Open an empty no-name buffer (use ^KD to open a named buffer).
Once opened, you can use ^KE to rename it.
^KF Files. Get a directory listing like WS3. Type in the directory
name at the prompt; if you leave it unchanged, it will show the
current system devices (via the Info command). WS4 uses this for
DOS commands - use F5 for DOS commands in Ustar.
Mouse * Click-loading of devices or filenames anywhere via Ctl-Mousebutton.
Go up and down the directory structure, load several files, or load
all files in a list, all with the mouse. See below for details.
F3, S-F3: Favorites *
If you have a bunch of files open, and are using just two or three
at the moment, you can toggle the "favorite" flag with shift-F3 for
those files; then use F3 to toggle between just those "favorite"
files, and you still have access to all the loaded files as usual
via F1 or F2. Great if you have 15 files loaded and are only
working with two or three at the moment. Excellent for comparing
two files. You can clear all of these flags in all files at once
with Alt-F3.
A-F1 * Alt-F1 swaps the current buffer with the "swap" buffer. This can
be handy if you want to change the order of the files (although F3
is usually a handier way to view file subsets); it can also be
useful for a "notepad" when you have a lot of documents loaded -
press it, add to your notes, press again to come back to where you
were. ^KX and the closebox check for this file not empty and let
you optionally save it on exit from Ustar.
^F1, AC-F1 (F4), SA-F1 *
Control-F1 shows you all of the non-edit buffers that are not
empty. These buffers are used for things like search/replace
strings, scratch (undo) buffer, swap buffer, and temporary use by
internal commands. Alt-Control-F1 lets you directly specify the
buffer number that you want to edit (F4 does the same thing).
Shift-Alt-F1 shows a summary list of all in-use edit buffers.
* Means a command added to Ustar by me, not a standard WS key sequence.
Windows
Split-screen windows are a nice enhancement. See the Uedit documentation for
details, or just play around with them. Note that, currently, windows are
lost if the display changes - going to/from interlace or cram mode, or
changing system fonts, will lose windows. Note that this affects the display
only - windows are just views into existing buffers, so no data is lost.
Also note that, currently, multiple windows into the same document will all
show the same location in the document. A way around this is to make a copy
of the document using ^KO and mark it read-only with ^OP, then use that as a
reference document in a window while you work with your original.
A note on UE-DU
I decided not to implement any of the functions of, or try to make Ustar
compatible with, the UE-DU configuration that turns Uedit into a disk and
file utility. This is because I utilize the machine's multi-tasking
abilities, having always either a CLI window, a shell, or if I'm doing lots
of disk and file work, one of the zillion different versions of DU (DirUtil),
a public-domain utility very handy for this type of thing. I just pop the
Uedit window or screen to the back or to tiny window, do any file maintenance
needed, and pop Uedit forward again. I did add some "friendly" file control
- see section below on Click-Loading.
Miscellaneous
The Help key brings in the s:UstarHelp! file from disk. If you again press
the Help key while viewing this file, it clears the help file buffer and
switches you back to whatever document you were previously in. If you are
viewing the help file and instead use F1 to toggle to other files, the help
file is not cleared, and the next time you press Help, it will switch to it
instantly, since it is still in its buffer. ^J is the same as the Help key.
^OG Paragraph tab is now actually Auto-Indent, related but not the same. It
works quite differently than WordStar but is usually more useful, especially
if programming. When in Auto-Indent mode, pressing Return (or reaching end
of line in word wrap mode) will place the cursor (or words you were typing if
in word wrap) below the first printable character in line above. For cases
where this doesn't work well for what you are doing, reformat and other
commands usually will help.
You can insert a space (via ctl-spacebar) without having to toggle between
insert/overwrite modes.
Normal backspace is destructive; shift-backspace is non-destructive.
Delete word left is provided via control-backspace. You can also
destructively tab backwards via AltCtl-Tab.
In Find, you have the added capability of specifying two separate search
strings in one command with the capability of the either/or character, which
is "$" by default.
In doing a Global Replace, you can specify whether to update the display or
not. Not updating the display typically runs in 1/3 the time. Specify a
lowercase "g" for displaying, uppercase "G" for no display update. Note that
other than this, Find/Replace options are case-insensitive.
If you try to center a line on the last line of a file, it will work fine
(inserts an end of line for you) unlike WS, some versions of which won't do
it.
You can collect results from AmigaDOS and use them in your documents - very
handy for showing the results of commands, getting directories into a
document, etc.
A few of the Ustar key definitions are still the same as standard Uedit - see
UstarDetails for info.
Prefix keys can be done via single-command-key sequences, e.g. ^KC can also
be issued as Shift-Ctrl-C. The functions to multiply, count, or repeat
commands will only do so with a single key-command, so you can't use WS 2-key
commands with them. For instance, to print a file 5 times, choose Command
mult, enter 5, then press Shift-Ctrl-P, which is the same as ^KP. See the
key table in UstarDetails for key equivalents and more info.
Programming Tools
Besides the overall excellent program editor environment provided by Uedit, I
have included the following to help me (and hopefully, others) in C
programming:
o ASCII chart online, toggle in/out (ShftCtl-Help)
o Toggle the # at the cursor between hex (C style) and decimal (A-H)
o Set editor flags and environment to my preferred C setup.
o Save current buffer to vd0: (where I do my C work)
o Put the "/* " and " */" comment delimiters into program with a
single keystroke.
o Reset editor flags and environment back to normal editing mode.
I have not incorporated commands to run C programs directly from within
Uedit. I find it easier to take advantage of the Amiga's multitasking, and
run Uedit/Ustar in its own screen in interlace, flipping forward to a shell
CLI window on the workbench screen to compile or make programs. If you do
want to compile, make, etc. from within Uedit, Tom Althoff created some very
good configurations to do this, which you probably will receive when you
register Uedit - ask for them.
Speaking of programming, the UstarConfig! (source) file for Ustar is not
formatted for maximum readability. I kept indentation, but merged a lot of
lines together, especially closing brackets, to keep down the length (in
pages) of the file. If you are tinkering with it and trying to figure out
long commands, you should "explode" them first, matching block-ends to block-
starts, for better readability and illustration of logic flow.
For those of you who have purchased Uedit and are customizing it or Ustar, I
made a reference document to the Uedit command language called UeRef, and
included it as a selection on the Help menu. However, it is intended to be
printed out as reference guide - use the compressed print mode on your
printer or in Preferences (I didn't include any formatting codes in the
document).
Telecommunications Commands
I added two commands to assist when using bulletin boards. One converts an
entire buffer from carriage-return/line-feed pairs to just normal Amiga line-
feeds. This is handy for stuff downloaded using a dumb (as in stupid)
terminal program. The other does the opposite - turns all line-feeds in an
entire buffer to carriage-return/line-feed pairs. This may be handy for
uploading documents to some bulletin boards.
-----------------------------------------------------------------------------
Features You Should Know About
Click-Loading Files/Dirs
This is very neat, and has been much enhanced.
Normally, you first issue a Directory command (^KF). However, it works
anywhere. Just point at a file, directory, or device name and click while
holding down the CTRL key. From then on, it's mouse city! You can:
Click on a filename to load it. Now, it will even load filenames
containing spaces! (1 space between characters max, and you must click
on the first word in the name). Filenames with leading spaces won't
work (anyone purposely using file or device names with leading spaces
should be shot!).
Hold down the Ctrl and Alt keys, and click on a filename, to delete it.
This is DANGEROUS - it doesn't ask for confirmation, just goes and does
it. This actually deletes the file from the disk or device - there is
no simple way to undo it. It only works when you are on a directory
list, since it prepends the directory name to the filename that you
clicked on. It deletes only files, not directories, and only one at a
time.
Click on a directory name (the name, not the "(dir)"). That directory
will be loaded, becoming the current directory for these mouse
operations, and will replace the one you were looking at.
Click on a device name, such as "DF1:" or "Letters:", to get the root
directory of that volume. The handy list of devices shown on each
directory list can be changed by editing and recompiling UstarConfig!.
Click on the "(Parent)" word to go back up the directory structure. The
new directory will replace the one you were looking at.
Click on the "(All)" word to load all files in the directory.
This last capability of "load all" is useful for making custom lists of sets
of files you want to load. To do this:
First, get the directory you want. Then, edit the file list, leaving at
least two spaces between filenames, or each name on its own line.
Be sure your list of files starts on line 6 or farther down, or "load all"
won't work correctly. Also, leave line 2 (the Directory line) as is - this
shows the directory that "load all" uses as the path for the files in the
list. You can put comments or notes on the blank lines (lines 1, 3, and 5).
To create a list of files that are in different directories, put an asterisk
("*") in the directory name position (column 18 of line 2), replacing or
inserting in front of the directory name shown. This tells "load all" to
ignore any directory shown. Then edit your list of files to include the full
pathname of each file; otherwise Uedit will assume its current default
directory is to be used.
You can save these edited lists to disk, naming them appropriately, e.g.
"WorkFileList". The next time you need that set of files, just load the file
that contains the list and then click on the "(All)" word.
This method is an alternative to making a specific Uedit command to do a
loadFile for each file in a custom set of files.
Note - click-loading will not load files with ".info" in them.
Note - if you try to click-load an asterisk by itself, if you haven't asked
for a directory yet, Uedit will try to get the CLI that it was started from
and appear to lock up. Use the window back-gadget and type control-C in the
proper CLI to unlock Uedit.
NOTE - Getting a (dir) or (Parent), or getting a device directory, e.g.
DF1:, will discard the buffer in which you clicked it, IF and only if the
name of the buffer starts with "Dir of", which it is set to by the directory
command. This is so a bunch of buffers aren't left hanging around as you go
up and down a directory structure. Normally, this is no problem; but if you
want to keep a directory list around, rename it to something else, then it
won't be discarded.
NOTE - This click-load capability depends upon having the "Dir" and "CD"
commands available to Uedit, so they should be in your c: directory, or
available somewhere in your system's search path as defined by the Path
command. Also - they MUST be the original AmigaDOS "Dir" and "CD" commands -
replacement commands probably will not let click-loading work correctly. The
"Info" command is also used, but is less critical - a DOS replacement command
might work in place of it. The click - file delete likewise depends on the
"Delete" command.
-----------------------------------------------------------------------------
Reformat
Reformatting works mostly like WS, but enhanced in some respects, and
lacking in others.
Compared to the "raw" Uedit reformat command, Ustar's reformat will
handle indented and floating paragraphs nicely. It also will properly format
outlined items, even if they are adjacent to each other.
Reformat Details
General
Formatting proceeds only from the cursor line downwards.
Formatting stops on: a null line, an empty (spaces/tabs) line, a line with a
control character (such as form feed), at end of file, or upon encountering
an outline item (defined below).
Examples here show formatting with justification on; you can turn it off
(with ^OJ) if you prefer ragged right margins.
Paragraphs
Paragraphs will be formatted as normal paragraphs (first line whatever
indentation you set, rest of lines aligned to left margin) if auto-indent is
off. This paragraph is an example.
Paragraphs will be formatted as floating paragraphs (left margin for all
lines of the paragraph will be the same as the indentation of the first
line) if auto-indent is on. This paragraph is an example.
Outlined items
o Outlined items have a specified mark or ID as the first printable
character in their first line.
o Bulleted items are defined as a lowercase letter "o".
o Numbered items are defined as: one or more digits (0-9), with a an
optional single period mixed between numbers, followed by a period.
Thus, Roman numerals and letter/digit combos won't work.
o Either item must be followed by at least one space.
o Auto-indent mode doesn't matter for outlined items - they are always
formatted to line up with the start of the text (not the mark or ID) on
the first line.
o This section contains outlined items. This line is an outlined item.
1. So is this line.
234. This is another one. They all format correctly.
234.1.1. And here's one with mixed periods.
2.1. And another.
Cursor column
Normally, you would give the Format command with the cursor in column 1. If
you have the cursor in some other column, it will switch into outline mode,
except that a bulleted/numbered format is not required. This allows you to
format tables of keywords followed by descriptions, by putting the cursor at
the start of the description. Example:
Cursor Column This is defined as the column that the cursor is in. By
setting the the cursor at the T of "This" in the line
that starts this paragraph before giving the format
command, this block formats in the way you see here.
You can also use this capability to format mixed paragraph types without
switching auto-indent mode on and off constantly. First, turn auto-
indent off. Then, for indented paragraphs, give the format command in
column 1. For floating paragraphs, give the format command with the
cursor on the first character of the paragraph.
Problems & Notes
The definition of outlined items might cause a problem occasionally if a
properly formatted number happened to be at the left margin of a paragraph
line, e.g. "435."; the same applies to a lowercase letter "o". The rarity
of this problem is insured by the requirement that these items be the first
printable item on the line, and that they must be followed by at least one
space or tab.
The reformat command will still run normal paragraphs together if there isn't
at least one blank line (or an outline item) between them. Outlined items
won't run together - you can have them one after another as shown above.
The speed of reformatting has improved dramatically as of Ustar v0.90, thanks
to Rick's speedup of the raw reformat() function. It is quite reasonable now.
Uedit's reformat command has a quirk: occasionally, after formatting, if the
last line of a paragraph/outline completely fills the line plus one
character, it won't wrap to the next line. This rarely happens, but these
are easy to spot visually if you are using right-justify in your document -
just go through it looking for anything that sticks out beyond the margin the
rest of the lines are aligned to, and fix manually.
You can change the bullet character if desired by editing and recompiling
UstarConfig!. Search for the 3-character sequence "o" and change the letter
o to whatever character you want. It can be any lower or upper case alpha
character, or any symbol or punctuation except a period; no digits. The
rules for format and use remain the same.
You can do a global reformat on your document by using ^QU, ^QQB, or reformat
a certain number of times using AC-1. WARNING - Try this on a copy of your
file first - it may give undesired results (which would require a lot of your
time to manually put back to the correct format) if it runs into something
like a table, or a bunch of centered lines that are together.
NOTE: For safety, do reformatting with a normal tab table active.
Otherwise, the following conditions can cause a problem: No tab stops are
defined in your current tab table, and there are tab characters in the first
line of a block and/or the second line of a block if an indented paragraph.
If this is true, the reformat command ^B will fail, inserting spaces to
replace the first tab character forever until you abort it manually or it
runs out of memory.
If truetabs is on, reformat will work fine (as long as desired tab table is
active), and will use tabs where possible on indented blocks instead of
spaces (however, note that leading tabs on the first line and/or the second
line will be converted into spaces).
-----------------------------------------------------------------------------
Printing and Dot Command Notes
Dot commands are now implemented.
When you invoke printing (via the ^KP Print command), you are first asked if
you want to just print the file as is directly to the printer. If you do
this, none of the following applies - every line will be printed as it shows
on-screen.
When not printed directly, a print processing sequence is performed. First,
the document being printed is copied to a work buffer, so that your original
is not altered. Then, all dot commands in the work copy are converted.
Next, you can preview where page breaks will occur, and put in forced page
breaks if desired. Finally, the work buffer is converted into a print image.
You are then given the option to print it or not, and also whether to keep
the work copy or discard it. This all may sound complicated, but isn't
really.
The print preview stage is intended for adjusting where page breaks will
occur. You can do most editing actions, but the typing keys won't type.
Typically, you would move up a few lines to a logical break in the text, and
insert a form feed via ^PL. (Don't put in any dot commands at this point -
they have already been processed and any new ones would simply print out as
is).
Also, REMEMBER that you are in a COPY of your original file buffer that is in
temporary use for printing - if you see something you want to change
permanently, abort from the print/preview, get rid of the temporary print
buffer, go and change your original document, then go to print again.
What are these "dot commands"?
Dot commands are lines in the text that start with a dot (period) in column 1.
(Since ordinary lines of text never start with a period, this makes for an
easy way to distinguish them from other lines of text).
Following the initial dot is a one or two character code that defines what
the dot command is and what it will do.
The power of the dot commands is that, although they appear on-screen, they
will not appear on your printout. For example, you can put comments in text
that you want to see while editing, but not print out. Also, consider
placing a heading at the top of each page in a 40 page document, then later
wanting to remove it. It would be a lot of work without dot commands; with
them, it is a matter of adding or removing one line from your document.
Dot commands are used in Ustar for comments and to control the way your
document will look when printed.
Here is a summary of the dot commands currently implemented in Ustar:
.. A comment line.
.ig IGnore. Same as ..
.pa PAge break.
.po # Page Offset. The left margin.
.pl # Page Length. Physical lines per page (usually 66).
.mt # Margin-Top. Lines in top margin.
.mb # Margin-Bottom. Lines in bottom margin
.he text HEader. One line of header text.
.fo text FOoter. One line of footer text.
.pi codes Printer Initialization string.
(Note - dot commands can be upper or lower case - .PL works same as .pl)
Here's details about them:
o .. or .ig (IGnore) - Comment lines are just that. Everything after the
.. or .ig to the end of the line does not appear in the printout.
Here's an example of use:
The sales figures for this quarter show signs of improvement.
.. Actually, they're awful, but we're not saying that in this report!
o .pa PAge break - inserts a form feed into the document on the line where
it is. Basically it has the same effect as using ^PL to insert a form
feed while editing, except that it won't show the "page break" line as
the current Uedit does.
o .po Page Offset - the left printing margin. If not specified, your
printer will use whatever Preferences has defined as your left margin
(if Print Via is 2 or 3). Otherwise, printing will start in this
column. Note that this uses the Amiga printer driver function to set
left & right margins, and may not work with all printers. You can
change it to use your printer's specific code by changing and
recompiling UstarConfig! - search for the 4-character string "po" to
locate the definition.
o .pl Page Length - the length of the physical page you are printing to in
number of lines, considering the length of the paper, and how many lines
per inch you are using. For standard 11" paper and 6 lines per inch,
the value is 66.
o .mt Margin, Top - The number of blank lines desired between from the
physical start of page (the edge of the paper, or the perforated edge
between tractor feed sheets) to the first line of text from the document
that will print on the page. Note that this is number of lines, not
inches.
o .mb Margin, Bottom - Like .mt but for the bottom margin.
o .he HEader (or heading) - This is one line of text to be printed in the
top margin. So, the top margin value must be 1 or more to print a
header. This line will be centered in the top margin, as much as
possible. If you have a 5 line top margin, the header line would print
in the third line, surrounded by two blank lines above it and two blank
lines below it.
You can specify two special "macro" symbols anywhere in the header (only
once each):
@ This symbol is replaced with today's date at format time. The
date format is dd-mmm-yy. Note that this overlays the footer
text at the @ character, so allow 9 characters for the date.
# This symbol is replaced with the page number at format time.
o .fo FOoter (or footing) - Like .he but for the bottom margin.
o .pi Printer Initialization - This is not a standard WordStar command. I
added it so you can send printer initialization strings before sending
anything from your document. You would normally use it to put printer
codes like ^PA in it, or a general printer code (see end of UstarHelp!
file) using ^PG, such as 0 to initialize the printer; or use (with Print
Via set to print direct to the parallel or serial port) with your
printer's escape and control codes inserted directly.
If you don't specify a value for the page length or margins (you include no
dot commands for them), the current default will be used, which normally will
be the settings in effect in the original document's buffer, but may be
different if other actions in other buffers have changed any of these
parameters' global values.
Note that, when dot commands are removed during print processing, they are
completely removed, so if you wanted blank lines where they were, you will
need to put in extra blank lines before or after them.
Differences compared to WordStar
Dot commands are global. For instance, unlike WordStar, you can have only
one footer line for the whole document. If several are specified, the last
one takes effect. The exception is .pa - you can put page breaks wherever
you want.
Note that .pa page breaks do not show a page-break line on the screen while
you are editing, unlike form-feeds in the document which do show the line.
Many of these limitations are a consequence of the need for a print preview
mode since Uedit doesn't support anything like dot commands.
See UstarDetails for info on unimplemented dot commands.
----------------------------------------------------------------------------
Repeating and Learning
Commands can be automatically repeated three basic ways: the Command Mult
(Multiplier), Count Cmd, and Repeat Cmd functions. These only work with
single-key commands - use the single-key equivalents to two-key sequences if
you want them to work in these commands. Command Multiplier accepts a number
from you, then repeats the next single command that many times (or until the
command fails). Learn mode allows you to learn any sequence of keys/menus/
mouse clicks, then you can repeat it (but see below). Of course, you can
also repeat just by doing some action manually a number of times.
See the Uedit documentation for complete info on command repeating and
learning. I will mention some of the more important points.
System-type commands can't be Learned or Repeated. This includes any kind of
Quit; Tiny Window, Abort (LeftAmiga-ESC or RightAmiga-ESC), and moving
interlace screens front/back. Commands that use requesters can be used, but
you must respond to each requester manually - your response is not learned.
The same thing applies to commands that use the getKey function, e.g. About.
Commands that use inputKey work but take input immediately, making them
useless. However, inputCtlChar does work fine in a Learn sequence.
Display: commands that are repeated via Command Mult or Count Command, and
commands within a Learn sequence, won't automatically update the display -
they usually hold off display updating until done, and appear either to be
doing nothing or zipping along. Repeat Command does a display refresh each
time, so it is usually OK in this respect, but also is slower for the same
reason. In Learn mode, you can usually force usable displays via Refresh
Display and/or Find Cursor, combined with Delay so the user can see it before
the next command executes. However, some actions just won't display right
until the above commands have finished, e.g. trying to do Go To Page#
several times in a Learn sequence won't update the display until it is done.
Most commands will run in a repeated sequence until they encounter some
failure condition; for instance, Cursor Down Line works until the End-Of-File
is encountered; then it fails. However, some commands won't fail because
there's no obvious thing that they should fail on. These can be dangerous in
the Count Command and Repeat Cmd functions - you will have to stop them via
Amiga-ESC, and you can't get a count of them. Similarly, in Command Mult, if
you specify a large multiplier, it has the same effect. Be aware of this -
repeating something like Block Copy for a while will fill up a buffer
quickly, and you might run out of memory. These commands never fail, so be
careful:
o any Learn sequence
o many one-shot type commands, e.g. Cursor To Top of Screen
o any Toggle-type command, e.g. Insert/Overwrite
o anything that inserts, and some Block commands, i.e.:
o Tab Return Ctl-Space Space ^N ^M
o Block: Copy Speak Move Undelete
o commands that require user input
o Up Scroll (^W)
Notes on special cases:
o Left Scroll (C-leftArrow) fails in Repeat, never fails in Count
o Down Page (^C) fails in Command Mult (does it one time only)
o Backspace fails in Repeat and Count
o Mouse click operations are usable in Learn but depend on display
screen location, not location in document, so normally they are
used with scroll up/down, if used at all.
Not usable or useful to Repeat/Count/Multiply:
o most one-shot type of commands
o Learn mode start/end/abort
Not usable or useful in Learn:
o mouse drag to highlight
o Continuous Up/Down Scroll (^QW/^QZ)
o Learn mode start/end/abort
Note: the details above were checked in Uedit v2.0c, and have not been
rechecked in v2.2b or v2.3c, although there is probably no change.
----------------------------------------------------------------------------
Differences compared to WordStar
Items of note
In addition to items mentioned above, here are some current limitations and
problems that may or may not be addressed as Uedit and Ustar evolve.
Files edited with Ustar must be able to fit completely in memory, unlike WS
which uses "virtual memory" techniques to allow editing any size file even
with little memory.
The second character of a WS 2-character command key sequence MUST be the
control character, not the plain character, e.g. ^K then ^R, not ^K then R.
Most people use WS this way anyway. This could be changed if desired so that
a normal character will be interpreted as a control character; I'm not
planning on doing this.
Since Ustar has many more editing features than WordStar, I assigned some
unused two-key WordStar key sequences to do new functions, such as ^KG for
Get Block. I tried to keep the meanings similar, e.g. ^K commands for
block/file, ^O for formatting, etc.
Backup files - if AutoBackup is on, Uedit will make a backup file ONLY if one
doesn't already exist. If one exists, it is never touched. This is unlike
WS, which deletes any old backup file, renames the current document on disk
to be the backup file, and then saves the current file to the filename.
Uedit will not help you if you don't make backups manually. You can delete
the current BAK file to force Uedit to make one at the next file save. You
can lose a lot of work if you mess up your file and discover that the only
backup is a month old.
The WS4 main menu command C (change the write-protect flag of a file) isn't
implemented; to protect a file, just use the AmigaDOS command "protect
filename"; to make it deleteable again, use "protect filename rwed".
The WS4 main menu command I (Index a doc) and T (make Table of contents)
correspond to the Alt-B Build Index command in Ustar. However, when building
indexes, there is no currently supported way to mark them so the markings
stay with the document (WS does this with ^PK, .IX and .TC) - you must mark
them interactively. A possible way around this is to save the "raw" index
file and reload it into buf41 before doing a re-index at a later time, though
I haven't tried this.
A directory won't stay on-screen with the document as it can in WS; it is in
a separate buffer. (You can copy a directory file list to the document you
are working in, if you need to; or use split-windows; or flip to interlace
mode and pull down Uedit's screen to view the workbench screen; or...)
Find/Replace options don't include the W (whole words) option; you will need
to include a leading and/or trailing space with the word you are searching
for to achieve a rough equivalent. They also don't include the WS4 R
(replace in rest of document) option; you can easily do this by simply
specifying a large number in the S/R options entry. Also, the WS4 A (align
paragraphs after a replacement) option is not implemented - you will need to
manually reformat after search/replace, as with WS3.
The wildcard character (default is "?") in Uedit matches one occurrence of
any letter. There currently is no "match anything" wildcard specification
like CP/M's "*" or AmigaDos's "#?".
Ustar is essentially in Non-document mode always, though you can enter
control characters directly. So, unless you directly enter them, there are no
hi-bits or other control-type characters (except end-of-line) in a Uedit
file.
Design notes: I chose not to implement auto-indent (via Return) when in
overstrike mode. I chose not to implement auto-indent on ^Y (didn't like it).
Note that the usual system-defined key combination of Alt-LeftAmiga does not
equal the left mouse button as far as Uedit is concerned. It does the same
as the alt-buttonDown command (if defined). For Ustar, this means it does
Block Copy. Otherwise, the Amiga's "keyboard mouse keys" work as usual.
^JH is not implemented for the setting of help levels (pull-down menus
eliminate the need for this) and no separately available ^Jx help areas are
implemented. Only ^J itself is implemented, to call Ustar's Help file, which
you can change if desired.
^U doesn't usually interrupt a command; only ^QZ and ^QW are set up to be
interrupted by it. RightAmiga-Escape (or LeftAmiga-Escape) is the general-
purpose command interrupter (abort key sequence).
With Uedit V2.3, you can abort from any place that UE is requesting input via
the normal abort keys. I have checked the code for possible problems - there
shouldn't be any problem. However, aborting during execution of a command
may cause peculiar things to happen, such as switching you to a different
buffer, or messing up the display. There should be no "fatal" effects,
though.
Setting the right margin is actually setting the word-wrap line length.
Under the limitations of the non-document mode that Uedit is always in, there
is no practical difference.
Line Length (right margin) default on entry is currently 77, not 65 like
regular WS. Easily changed in UstarConfig! if desired.
The Return key now works exactly like WS, except for differences inherent in
Auto-Indent versus paragraph tabs.
^QV will go to the last find/replace ONLY if it is still marked via inverse.
^KH completely removes hiliting - you can't toggle it back on by doing ^KH
again.
If cursor goes off-screen, control-Return will find it (Uedit doesn't
currently have entirely automatic screen refresh control, so performance can
remain good).
Block Column mode uses a different buffer than normal block mode, so Undo's
won't work for word/line delete if you are in Column mode. Switch back to
normal block mode to get them.
To cancel a Find or Find/Replace: if at the Find string field entry, just
clear it - this always causes the search to fail right away. Elsewhere, or
during a search, use the Uedit abort key.
Word Wrap is a rough word wrap function; like WS, it does quick & dirty
formatting as you type; for final formatting use the Reformat command. When
turned off, no forced word-wrap will occur. When word-wrap is off, lines are
not limited to 512 characters like WS - you can have 10K long lines if you
want to! With it on, Uedit limits you to lines 200 characters long.
Reformatting always uses the current line length regardless of word-wrap
toggle.
^Z works just like WS, but ^W doesn't quite - the cursor attempts to remain
at the bottom line of the screen once it reaches it, but it doesn't always
succeed.
Placemark ^K0 through ^K9, and corresponding Placefind ^Q0 through ^Q9:
these only set/goto a particular line, not an exact cursor location as WS
does. They are global; that is, if you switch files and then tell it to find
a place that you had set in another file, it will simply try to go to that
same line # in the current file. Likewise, if you delete blocks and
generally change your document, the placemarkers will put you to the same
line number, which is not necessarily the same area of text present when you
set the marker.
^QQ repeats: you can now set the speed via setting system Delay value. The
Delay value is 0 when Ustar is started, for fastest operation of this command.
^QZ, ^QW - you can't set the scroll speed, it is fixed. If you want to try a
variable speed, use ^QQ (command repeat) with ^Z or ^W.
^OP - protect/preview - in Ustar, this just makes the buffer read-only - it
has no effect on how it displays. Also, Uedit will currently display page
breaks as a line across the page, but only when a form feed causes the page
break, not when caused by the page/row counter turning to next page.
^QM - Math calculator mode. I implemented this as the simple running of an
external calculator program. So, you can change it to whatever you want. To
achieve the cut/paste facilities of WS in getting the result and/or the
equation, into your document, use a utility like SnipIt, which is a shareware
program that lets you copy CLI text and paste it into Uedit. The calculator
I have running right now, named xe, is only an integer calculator, but you
can run any one you want by naming it xe and copying it to your Ustar working
area (though not all calculators will be able to do cut/paste via SnipIt).
Delete trailing whitespace - this deletes extra space (spaces and tabs)
beyond the end of line. This reduces the size of a document and can make
formatting tables etc. easier.
See alt char set - useful to check what's in the Amiga's alternate character
set, so you can put characters like ¶ or © into text.
^QX - In WS4, this command now puts the cursor to the lower right corner of
the display. I kept the WS3 usage of going to the lower left corner of the
display.
^OP - Protect (same as ^K=): Uedit won't allow you to save a file marked as
ReadOnly (WS allows you to do this). Flip the flag with one of these
commands if you need to save it.
^K' and ^K" convert a marked block to lower and uppercase, respectively, just
like WS4. However, unlike all other two-key commands in Ustar, these are two
different commands that use the same keytop ID. ^K' works normally by doing
Ctrl-K then Ctrl-'. But for ^K", you do ^K then Shift-".
The WS4 ^6 command, change hard carriage returns to soft ones, was
implemented as much as can be, by causing it to delete the end-of-line of the
current line, thus bringing lines below up. Given Uedit's lack of document
vs. non-document mode, it isn't real useful, since reformatting will
normally handle these needs, but is here for compatibility.
^KY in WS4 moves the cursor to the position of the deleted block. Likewise,
^KW in WS4 moves the cursor to the beginning of the block to be written.
Ustar leaves the cursor alone in these cases, as does WS3; this is how I
prefer it.
^KC in WS4 leaves the highlighting on the original block. In Ustar and WS3,
it moves with the copied block; this is how I prefer it.
Print control toggles: ^PB, etc. - to keep track of the current on/off state
of these toggles, Ustar uses one n# variable per edit buffer. These are used
ONLY if the print controls for that buffer are actually used; otherwise they
are not touched. And, they apply only to the edit buffers, and won't work in
global buffers. The n# used corresponds to the buffer#, e.g. using print
controls in buffer 4 would change values in n4.
If you are using print control toggles, and you change documents in a given
buffer, swap buffers, etc. the print control state will not be changed and
will proably be wrong. To clear it, use Misc - Numbers - Set Variable and
set to 0. WS is limited to editing one document at a time, so doesn't have
these potential problems with print control toggles.
^PX toggle was redefined from the WS Strikeout usage to NLQ. NLQ seems more
useful, and strikeout isn't a standard Amiga printer driver function, though
it could be done via backspacing (or carriage return) and typing dashes.
^PC, ^PO, ^PG were remapped to new uses. ^PW, ^PQ user functions are
predefined. ^PJ was remapped to new use.
ESC macros (Shorthand) are closely emulated. Due to basic differences
between Uedit and WordStar, you can't see or edit existing macros (Learn
sequences), but can usually otherwise do what you can do in WS. The exit key
is different, there's no "enter equation" ESC #, there's no difference
between ESC $ and ESC =, neither of which will enter results from the math
calculator, only from ^KM or alt-+/alt--. The macros are represented by
Learn files saved on disk; basically this ESC function acts as a shell to
make Uedit macros a bit easier to manage.
When defining macros, case doesn't matter for keys a-z - enter as upper or
lower case. Unlike other command keys, when in Macro mode, case DOES matter
for the symbols representing predefined macros - be sure to press Shift for
?,!,@,$, and not press Shift for =. If you enter something other than alpha,
digit, or one of the defined keys listed, nothing will happen (same as
pressing Return).
^OL is not implemented - you can't easily change the on-screen left
formatting column, although you can use ^B (reformat) to do this in some ways
(see above). If you want to change the left column for printing, see the
section on dot commands elsewhere in this document.
I have not added menu items to load other configurations, such as UE-DU,
standard Uedit, or Scrawl. If you want these, select System - Commands/
Compile - Load Data! and give the name of the Data! file.
I added a toggle for UseKeys, only for restoring the system to normal if one
of the few commands that needs to toggle useKeys to work properly (ESC, ^OI,
^QG/H/T) uses it is aborted in the middle. I don't remap any of the normal
typing keys to odd uses, so it shouldn't otherwise be necessary to use this
flag, and it should remain off. You might notice useKeys is on by the
spacebar, Tab, and Return working differently than they usually do. You can
check its current status in the menu or with the global overview command, SA-
F1.
I added mouse-resizing of split windows (SAC-mouse). This may take some
getting used to: if there are several windows on screen, when you resize one,
the order of the windows will usually change.
Primitive Mode
"Primitive" mode, used when entering filenames, search strings, etc., is
different from WordStar. No arrow keys or other editing functions work.
Instead of ^S, use BS; instead of ^Y, use DEL and BS to clear a field; use
shft-space and shft-BS to move transparently over the field; instead of ^U to
cancel a command, clearing the field will usually cancel its action, or use
Amiga-ESC to completely abort it. There is no "undelete" character (^D) or
recall field (^R) equivalent.
Uedit v2.3c allows you to set the control character that terminates the
Primitive mode input. Previous versions of Ustar used ESC to end primitive
mode input. As of version v0.90 of Ustar, Return (or ^M) is now the key to
do this. This makes it the same as WS. You can change it with the System -
Environment menu's pmESC selection to be ESC instead, if you prefer it that
way.
Insert/Overwrite mode in primitive mode string inputs (filenames, search
strings, etc.) appears to be dependent only on the insert/overwrite mode in
effect either when Uedit was started or the buffer was opened. There is no
way to choose the mode; if you are in overstrike and need to type something
in front of the existing text, you will need to retype the whole string.
No other commands, like file directory, will work while in primitive mode, so
do any directory viewing beforehand, or if in interlace, toggle to Workbench
screen to get directories, or in non-interlace click and size a CLI window,
or pop up a CLI with PopCLI, or.... Or, use the mouse to click-load files/
dirs, or the AmigaDOS command to do a Dir, or...
Keys
It is recommended that you don't swap active keys, since there are many
interrelated keys, keys that run another key. This is especially true of
Ctrl-keys. I would recommend swapping only those keys that are currently
unused which includes mouseUp and most Amiga keys. To see which keys are
unused, select Misc, Keys, Keys InUse, and press candidate keys until you
find one that is free.
Warning: DON'T use "Kill key" command on prefix keys like ^K or you will lose
dozens of key functions at once. If you use them on a control key such as
^D, you will lose all prefixed functions of that key, e.g. ^KD, ^QD, ^OD etc.
would no longer work. There should be no need to kill keys, in general.
Be careful with the Swap Keys command - it won't swap WS 2-key sequences;
even if you specify them as their single-key equivalents (see key table),
that will only affect the operation from the menu or by that single-key
equivalent, not the regular WS 2-key sequences.
Tabs
^OI and ^ON set tabs visually/interactively, and you can do a bunch at once,
instead of doing just one at a time.
^OV selects which tab table to use. Current Ustar default is one with simple
tab spacing of 5, the same as WS document mode. For 8-stop tabs at any time,
use ^PI to tab to the next 8-stop tab stop, or just switch to use tab table
0. Tab table 3 is purposely empty so you can define your own. Ustar assumes
that table 0 is the 8-stop tab table, and that table 2 is the one you use for
C programming.
^OT shows the tab ruler line, but doesn't toggle it on/off - it only shows
until a key/mouse action, then disappears.
^Tab toggles the trueTabs mode on/off. When off, tabs will act just like WS,
using spaces instead of tab characters. When on, it uses tab characters, not
spaces, and tabs always insert, even if overstrike mode is active. (WS
always uses tab characters in non-document mode, and spaces in document mode).
NOTE: The Tab key won't work if trueTabs is off and no tab stops are defined.
If you type the Tab key in this case, it will appear to lock up. This is
because it is inserting spaces up to the next tab stop, and there is no tab
stop, so it inserts spaces forever. Use the abort key sequence to stop it if
this happens.
NOTE ALSO: If your current tab ruler isn't the same one that you created the
document with, you may get misaligned text, or hard tab characters (square
O's) may show up in your document, especially towards the ends of lines.
The Tab key now works like WS except: when tabs wrap, they wrap to column 1.
WS wraps to the first tab stop, normally column 6. This could be
implemented, but I prefer the wrap to column 1.
Spelling
Checking of spelling in a document is very roughly implemented. Uedit
doesn't provide a speller, and the best one I could find as freely
distributable software was MicroSpell, from Fred Fish disk #101. MicroSpell
basically works, but needs a lot of polishing up. Read the MicroSpell
documentation for general info. For the ^QL, ^QN, and ^QO functions to work
properly, the MicroSpell executable file "spell" must be in the system path,
and the dictionaries "dict.dct" and "common.txt" must be in the current
directory, as must the document to be spelled. Unfortunately, user
dictionaries don't work with the current version of MicroSpell (they're
supposed to).
It is pretty much manual operations at this time - give the spell command,
wait quite a while for it to finish spelling (you can use Uedit in the
meantime, though it is slowed down), then get the file "spell.lst" from disk
and check it against your document manually.
How it works
Since Uedit doesn't directly support two-key commands, how did I implement
them? I dedicated one n variable number, n84, to be the global flag to
indicate whether a prefix key has been pressed and if so, which one. So, if
you press ^K, n84 is set to 10; ^Q, set to 20, etc.
Then, when any control key sequence is pressed that is part of the WS command
set, the code for that key checks to see what prefix is active, if any, and
takes the appropriate actions. For instance, if ^D is pressed and the
current prefix value is 0, it moves the cursor right one character. But if
^D is pressed and the prefix is 10, then it does the ^KD action of getting a
file.
Almost every Ctrl key sequence that is a letter or number is intercepted this
way, as well as some others. A very important point is that every successful
test, say the ^KD noted above, clears n84 back to 0, so that the next control
key action is correct. If the commands didn't clear it, then when you did a
^X to go down a line, you might get a ^KX or ^QX instead!
This illustrates the power of Uedit - many editors and system utilities will
let you map one key to another, but very few will allow complete emulation of
complex 2-key sequences to do whatever you want.
----------------------------------------------------------------------------
Currently Non-implemented WS commands/functions
Items of note (many differences, details, and remappings discussed elsewhere).
o Dot Commands - some implemented; see separate section in this document.
o ^QP position before previous command.
o Spell - spelling capabilities present but currently very limited.
o Thesaurus - nothing included; could run external one like WS4 does.
o Some ^P print control commands
o ^PH Overprint Character (could be approximately implemented)
o ^Preturn Overprint line "
o ^PO Non-break space
o ^PF, ^PG Phantom space and rubout
o ^PC Print Pause
o ^PJ Line feed without carriage return
o ^PE, ^PR are undefined; ^PQ, ^PW I have predefined
o Margins / Ruler line / settable tabs stops / decimal tabs:
o ^OL Left margin set No capability
o ^OX Margin release Use WordWrap toggle, or line length set
o ^OF Ruler from file line No capability
o ^OO Embed current ruler No capability
o Formatting:
o ^OS Line Spacing Must do manually (use Learn mode)
o ^OH Hyphen help toggle No capability
o ^OE Soft hyphen togl/ins. "
o ^OB Soft space display " and not applicable
o ^P@ Align columns "
o ^QU (Non-doc) Strip hi bits Haven't found a need for it;
if need, see UstarDetails - tcmds
o Other
o Alt-Fx line/box drawing - characters not in Amiga character set to
do this. You could of course create your own font and implement
this.
--------------------------------------------------------------------------
End of UstarDoc