home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d7xx
/
d770
/
uedit.lha
/
Uedit
/
Ustar.LZH
/
UstarDetails
< prev
next >
Wrap
Text File
|
1989-05-10
|
49KB
|
1,004 lines
UstarDetails v0.90
Details and low-use stuff about Ustar.
Ustar is Copyright © 1987 Kurt Wessels. See UstarDoc for distribution info.
Uedit is Copyright © 1986, 1987 by Rick Stiles. See Uedit-Policy for info.
Table of Contents
revhist Revision History for Ustar
keymap Keymap Table - summary of use of every key combination
tcmds Miscellaneous extra commands
WS4fk WS4 Standard Function Key assignments
uedifs Keys that are the same for Ustar as Uedit; differences between them
usfiles Details on files/programs used by Ustar, and paths
dotcmds Unimplemented WS dot commands
refmt Info on how the Ustar reformat command works
============================================================================
revhist
Revision History
Other than this section, Ustar documentation always refers to the current
version of Ustar. This information is for informational and historical
purposes.
Newest revisions listed first.
Ustar v0.90 (for Uedit V2.3c)
Release date: 12/11/87 is official date; released at WAG meeting and also
mailed to Rick Stiles 12/12/87
Summary:
Extensive changes to take advantage of stronger word processing features of
Uedit v2.3a. Extensive changes to update to WS release 4. Changes were
extensive enough that no attempt was made to flag them in UstarConfig!.
Of major note:
Reorganized menus into submenus; set up all new defaults. Took advantage of
various new language features. 20 file limit gone - commands now look at
MaxFiles. All n#s and var#s remapped. Rick sped up the reformat() command
so reformatting time is quite reasonable now. Split Windows added. Enhanced
UstarTutor. Updated descriptions of keys in UstarConfig! so TeachKeys mode
is useful. Now distributing UstarConfig! even with shareware version.
Major dot commands used in printing now supported. Major print controls now
supported. Reorganized docs to put detail stuff into new UstarDetails file.
Removed:
All Scribble! equivalents. Buffer size ^QN (now in buffer status); Doc.
interchange ^KI; setLocals AC-kp3; "Quick find" F9 removed - never used it;
Col. functions SA-kp3 & SC-kp3 due to colToLoc etc. avail; virtual-kp-
(language problem fixed); Runkey notes in UstarHelp (just search on
runKey(keyname) to check on any key change); open/close line ^OO (former
scribble F10)
Remapped/duplicated keys:
1st 5 func keys: F3 del., all F2 functions to F3; F4 del., now edit buf#; F5
del., now AmigaDOS cmds; F2 now Prev. Bufr. ^H now = BS;
Remapped to avoid WS4 conflict:
Pagelines ^PI to ^PJ; InputCtlChar ^PK to ^P=; Speak block ^KM to ^K];
Remapped to WS4:
Block Insert/overlay ^K-to ^KI; Goto Page ^QP to ^QI;
Mach workarounds:
F3 = AC-F1; R-F6 = A-F6; R-F1 = A-F1; R-F3 = A-F3;
Added WS4:
8-col. tab ^PI; Elim. EOL ^6; Reformat to EOF ^QU; Spelling check cmds ^QL/
^QN/^QO (rough); Fwd/Back by Char ^QG/^QH; Del Fwd to Char ^QT; Bytes to
cursor ^Q?; Block lower/uppercase ^K'/^K"; ^PK index word mark; Insert FF
^PL; ^U now = to ^KU; Ruler tab display ^OT; Preview/Protect ^OP to equal ^K=
read-only closest equivalent; ^QM calculator; Column math ^KM; ESC Shorthand
macros;^PB, ^PS etc. printer control toggles and ^PA etc. non-toggles;
function key mapping like WS4 (inactive); added the most common dot commands
and print processing/previewing for them in ^KP;
Changed for WS4:
^OI, ^ON now both set tab ruler interactively; ^H now does backspace
Added other:
Set Speech params AC-kp5; Del. Whitespace AC-kp3; Show Alt. Chars. AC-kp4;
Teach modes A-T, A-D; Auto-save ^K>; Swap mouseup AC-kp6; Keys in use AC-kp7;
System memory AC-kp8; Abort print ^PU; Abort all prints ^P0; restart print
^P1; set Idle time AC-kp9; UstarTutor A-U; load defaults AC-F6; tiny window
R-Help; typeChar ^OY; set Maxfiles AC-kp0; Changed toggle ^K[ ; mapChars SA-
kp3; DOS w/no results S-F5; markGadgets SA-kp6; QuickRef A-Q; displaybeep/
audiobeep toggle SA-kp7; ^PF find printer ctl code; ^PO print block; external
command that builds a "keys in use" table; useKeys toggle in case abort of
tab ruler,ESC, or ^QG/^QH/^QT done; 2.3c mouse window resizing, pmESC setting
added;
Changed:
^KL does ChangeDir now, not prefixed pathname; C commands mapping from F8
only to F7 & F8, also easier to use; Quit eliminated from S/R opts since
abort will work now; sped up & added speed control to ^QQ; quit actions on
buf41 & asking; prepared locate/goto place markers to use new Index
functions, once they are working; ^Tab was hard tab, now is truetab toggle;
^OV now selects tab table instead of global tab spacing; QuickRef renamed to
UeRef;
Improved:
^W a bit; enhanced error msgs, mostly file-related, many w/beepDisplay
shftCtl-F & othercode inputString uses for false return; search strings to
literals, where applicable; goto label() stuff in 2-key section & elsewhere
with return, where applicable; blocks manipulations for changed highlighting
that stays with normal & col. blocks, ^U/^KU now highlight block; Checked/
fixed/streamlined Return key, spacebar, shft-return, and various tab keys'
code, especially using new locToCol, sTab etc. & different algorithms - all
faster/better;^OC & several other commands to handle FF's correctly; ^F, ^T,
^A - closer to WS, except for punctuation, not skip certain punct now;
reformat command checked/fixed/streamlined; added code everywhere to consider
tab char as well as space to be blank space; discovered display problems and
found ways around them, e.g. virtual-kp3, shftAlt-f1; decided to keep mod(n)
method of S/R options instead of separate n numbers; was able to eliminate
all sLine/sFile special display checking - yay!; decided not to convert
runKeys() to minimize key conflicts, there are too many and would be slight
performance & size penalty, what really is needed is dupKeys() function;
deleted big "PopCLI Conflict" section & added smaller section on general
conflicts; put a Dvorak keymap into UstarConfig! defaults (inactive); decided
to leave index buffer as buf41 instead of remapping to its own buffer, for
both safety & convenience; reference files now looked for in current dir,
then s:; ^KQ acts slightly different now; Edit Buf # now will accept name as
well as number; ^T, ^F, ^A now work exactly like WS; Space bar is faster now;
tab key wraps properly; "last-specified" defaults for block names, edit buf,
var# see/set, DOS cmd added; 2.3c tabsToSpaces replaced;
Ustar v0.83 (for Uedit V2.2b)
To be released approximately 8/22/87; all dated 8/21/87.
Primary change is update to work with Uedit version 2.2b.
Updated documentation to correspond. Rearranged - moved editorial to top of
doc, other changes. Updated QuickRef for new commands. Wrote a couple more
letters to Rick and included this version. Distributed on Rick's disks and
locally via disk copies and ARCS to BBS's.
Updated documentation to reflect availability of new version of PopCLI (III)
- how to use it with Uedit.
Brief notes on numerous changes:
* Refamiliarized self with code. * Fixed header to work with new
version. * Fixed "load all" where 1st file in list wouldn't load. *
Changed gadgets, icons defaults due to 2.2b changes. * Made Help go
back to doc were editing. * Fixed ^Z weirdness - added a refreshDisplay
statement * Changed F10 code for better operation. * Researched other
language changes, documentation updates. * Found that the version of
"More" using in iconized version was bad (would say "No memory" when
there was plenty) and switched to newer, smaller, working version. *
Used typeChar to put in copyright symbol in a couple places. * Created
a tutorial
* Changed docs to reflect PopCLI III availability. * Added "clear
favorites" as alt-f2. * Virtual keys implemented where using keys for
internal functions. * Added icon control. * Added kp Enter = Return *
Added spaces-to-tabs. * tabColumn changed again - changed Ustar code to
work properly with it * Added LF->CRLF, CRLF->CR functions as ShftCtl-
kpEnter, Alt-kpEnter * Changed SA-F1 dangerous quit to something harder
to hit - SAC-F1; likewise changed S-closebox quit to SAC-closebox. *
Up/down page replace with up/down scroll. * Added Untab (destructive
back-tab) as AltCtl-tab * Add C setup config. * Added mouseXY use so
mouse marking of text blocks beyond screen automatically scrolls. *
Implemented Rich O'Brien's idea of a "quick find". * Added ^KF mouse-
click on devs:. * Added altCtl- buttondown for file delete. * Changed
file ops so usually return to correct previous buffer after ^KQ, etc. *
^KQ, ^KT now check for swap buffer (41), save if not empty. * Swapped
F5, S-F5: F5 now goes to previous file, S-F5 goes to next file. *
Added SA-F1 which gives overview of all in-use Edit buffers.
Ustar v0.80 (for Uedit V2.0c)
To be used with Uedit 2.0c only.
Extensive Reformat command upgrades - much closer to WS and much more useful.
Extensive mouse directory/file load operation enhancements.
Fixed tabs (extensive rework of code) due to Uedit 2.0c correcting an offset
present in older Uedit tab functions. Also enhanced/corrected all tab
functions, esp. line-length wrapping. Uedit's tabsToSpaces now works
correctly.
Brief notes on other fixes & enhancements:
* Learned language better * Cleaned up the code: checked use of
getKey/inputKey, thisKey, abort, returnTrue/False, add/sub vs.
incNum/decNum, word/char regions, indentation & formatting. * Added
ASCII Table * Added Auto-start "Policy" requester * Updated to the
"About" text from 2.0c * Fixed Shft-Space at sFile quirk * Added Quit to
Find/Replace options * Added F2 Favorites Set/Toggle * Fixed ^KR cursor
* Added NoName buffers try to eliminate on file loads * Fixed Spacebar
display quirk * Added edit buffer# * Added Column Overlay mode toggle *
Added setLocals for tabSpacing, pageLines, lineLength * Added dynamic
mouse drag highlighting * Fixed ^N cursor location * Fixed ^Z cursor
movement * Improved ^W cursor movement * Added to ^KA the default of
curFile name * Added ^KL default dir for use with ^KD/^KI * Fixed
Find/Replace options G, B, and # * Added no-display option to
Find/Replace G option * Added rest of placemarkers ^K3-9/^Q0-9 * Fixed
quirks in reformat command where could * Added "safety" to "build index"
command since uses same buffer as swap command * Cleaned up user
messages * Remapped all F5 functions to F1 (F5 still does toggle
forward/back via runKey if Scribble options active) * shft-F6 (Make
Command) now toggles * Fixed Alt-F (shftAltCtl-kp3) EOF lockup * *
Checked Learn/Repeat operation, fixed keys as needed, documented quirks
in this doc * Improved the documents. * Implemented better version
update procedures. * Distribution disk updated: Xfrd 2.0c files incl.
new Uedit-Policy, added more tools, utilities and configs.
Released above at NSAUG meeting 05/06/87 (only 1 copy)
Changed two items and re-released as same version number 5/8/87:
* Fixed problem related to inputString() in ^KF - now works fine.
* Changed keys: insert a space function switched from shft-space to ctl-
space; shft-space now is transparent space (cursor right) to match
primitive mode.
This version sent AMUSE, and to Stiles with 2nd letter.
(Versions below were for Uedit 2.0 or 1.8)
v0.74a
(4/26/87) Found that UstarData! wasn't correct on below revision - had copied
old version 0.72 to 0.74 disk. Copied correct one to it today. OK other
than that. Also, put old WPtools disk contents onto Uedit disk, updated its
AboutUeditDisk doc. Redid crc.chk, new one on UeditWORK disk now named
crc.chk-v0.74a.
v0.74
File commands changed somewhat from v0.72; other small changes. 4/23/87 at
WAG, lots of copies.
v0.72
Smoother functioning; updated docs. 4/18/87 at AMUSE (Amiga Users Eastside).
Also 4/20 to Althoff, Stiles, TSD. First version that appeared on a Stiles-
distributed disk.
v0.7
Initial release 4/11/87 at WAG (Washington Amiga Group) meeting to several
people. CRC, etc. not recorded.
-----------------------------------------------------------------------------
keymap
Keymap Table
K E Y M A P
CODES USED
(blank, no code) WS std, same or close to WS function (letter keys only)
+ Not WS standard, added to WS-like command set; noted only for characters
and numbers, not noted for Alt- key prefix
* key intercepted in order to give standard WS functioning
-- Not WS standard, not in use; noted only for characters
! WS std, not implemented, planning to later
= WS std, not implemented, not planning to
~ WS std, implemented, but somewhat or very different from WS; or not
fully implemented yet.
@ WS std, remapped to new use (new use shown)
< Internal-use (called by other keys only)
> Temporary
Notes on Left-Amiga and Right-Amiga keys added in Uedit v2.3
(Note that these prefix keys can't be used with other shift keys).
& Amiga system-defined key - don't use for keyboard cmd.
^ Amiga system-defined key - shouldn't use, but can since not use in UE.
% Conflicting key - don't use from Keyboard; OK use for internal cmds.
NOTE - shifted(alt/ctl/shft/amiga) DEL/BS/ENTER/RETURN/TAB act as REAL key
unless they've got a command attached.
*****> Note: table goes beyond 80 columns; print in condensed print ----->
WS use: - - - - ^K ^Q ^O ^P --- --- ---
n84: 0 0 0 0 10 20 30 40 --- --- ---
Menus: x S-x C-x,^x A-x SC-x SA-x AC-x SAC-x V-x L-x R-x
Key-> normal shft ctl alt shftCtl shftAlt altCtl shftAltCtl virtual lAmiga rAmiga
(none)
Func: Normal Shifted Control Alternate Block Quick OnScreen Print Internal LeftAmiga RightAmiga
A Normal Typing Use LeftWord +F-SavAs Find/rpl -- AltPitch
B | Reformat BldIndx B-Beg ToBlkBeg +BusiesTg BoldTogl <GetBufNm# ^Req.NO/OK
C | UpScreen B-Copy ToEOF LnCenter @PrtColor
D V RightChr TeachKey F-Open ToEOL CtlChars DoublTog <GetDate
E UpLine F-Renam ToTOS Hyphen! =UserDef
F RightWrd RightAln F-Dir Find !RulrTxt @PtrCodeFnd
G CharDel +B-Get FindCh.F ~Par.Tab @GenlPrtCode
H BackSpc HexDecml ~B-Hide FindCh.B @ASCIIval =OverPrtC
I TabRight B-Ins/Ovl GotoPage ~TabsSet 8col.Tab
J Help F-Del -- ~Justify +Lines/pg
K prefix WindoKlone B-End ToBlkEnd +CramMode Word->Ndx
L RptFind CDlogDir ~FindSpel !LeftMarg InsertFF
M Return B-Math MathCalc +VarSet =OverPrtL %Scrn Fwd
N PutEOL WindoNext ColMode ~SpelWord ~TabClr PicaPtch <Pfmt-Dots %Scrn Back
O prefix OpenBuf F-Copy ~SpelWrdC !EmbdRulr @PrintBlk <PrintFmt
P prefix F-Print =LastCrsr ~Prot/Vue +PrtPref <PtrCtlCd
Q prefix QuickRef F-QuitSav RptCmd~ +VarSee ~ComprsdPrt ^ReqStrUndo
R DownScrn B-Read ToBOF ~RtMarSet =UserDef
S LeftChar F-Qsave ToBOL !LineSpcg UndrScor <GlobStat
T WordDel TeachMode +F-AllSave DelChFwd ~RulerDsp SuperTog
U Undo UstarTutr +Undo RfmtEOF +FlipCase +Abort1Prt
V InsrtTogl WindoSplit B-Move ToLfind ~VariTabs SubscTog ^Req. YES
W ScrolLup B-Write ScrollDn WordWrap ~WidePrt
X DownLn QuitSafe ToBOS !Mar.Rel StrikTog ^ClrReqStr
Y LineDel WindoClose B-Del DelToEOL +TypeChar ItalicTog
Z ScrolLdn WindoSize +F-B/U ScrollUp +RowColTg +AutoExec
0 ) ZeroTotal PlMark PlcFind +AbortAllPrt
1 ! LearnTogl SaveLearn PlMark PlcFind CmdMult +RestartPrt %(abort)?
2 @ RunLearn GetRunLrn PlMark PlcFind LoadLearn -- %(abort)?
3 # PlMark PlcFind
4 $ PlMark PlcFind <SavBuf41
5 % PlMark PlcFind
6 ^ DelEOLs PlMark PlcFind %
7 & PlMark PlcFind %
8 * PlMark PlcFind
9 ( PlMark PlcFind %(abort)
- _ Subtract Split-
= + Add +F-R/O +InCtlCh <Math-Add Split+ %(abort)
\ | InsertTot +F-Icon
[ { +B-Chnged
] } +B-Speak
; : %(abort)
' " Menu-^K" B-lcase/Ucase %(abort)
, < %
. > F-AutoSave
/ ? Demo About Bytes@crsr %(abort)
` ~ <FindMarker
kp0 = 0 KillKey SwapKeys MaxFiles <ClkFileName
kp1 = 1 SetWcard SetEiOr SetEOL <DelimitCk %(abort)?
kp2 = 2 SetDelay DoDelay CountCmd <RefmtCtl %(abort)
kp3 = 3 MapChars DelWhtSpc <LoadAll
kp4 = 4 SpkMsgs SpkAlrts ShowAltChrs <GetDir
kp5 = 5 lc->UC UC->lc SpeechParms <S/R-opts
kp6 = 6 MarkGadg SwapMouseUp <S/R rpt %
kp7 = 7 AddBeep KeysInUse <NotWsCmd % ?
kp8 = 8 TopMargn UseKeys MemoryUse <WSnoImpl
kp9 = 9 BotMargn SetIdleTime %(abort)
kp- =L--
kp. = .
kpEnter = Return = Return = Return CRLF->LF LF->CRLF
Gadget1 NextFile
Gadget2 PrevFile
Gadget3 DownScroll
Gadget4 UpScroll
ButtonDn Plc/Hilit BlkMove LoadFile BlkCopy IndxBld BlkDel FileDel WindowResize
ButtonUp
Closebox Save/Quit QuitNoSav
ESC Macros Interlace pmESCset LaceColor UE Abort UE Abort
Tab * Tab TransTabF TrueTabs TransTabBk TabToSpc SpcToTab DstBakTab <SeeHardTabs %(abort)
Space * Spc TransSpc SpcInsert <routine V-S
Return * Rtn MchIndent FindCursr
Backspace BS NonDesBS DelWrdL %(abort)
Del Del <DelDirBuf
F1 ToglCfile PrevFile SeeGbufs SwapBuf AmigaDOS SeeEbufs EdBuf# QuitNoSav = A-F1
F2 PrevFile = A-F2
F3 TogFavFil TogFavFlg ClrFaves
F4 EditBuf#
F5 AmigaDOS DOSnoRslt
F6 CompileCmd MakeCmd LConfig SConfig Ldefaults = A-F6
F7 C-ins /* C-setup C-SavVD0:
F8 C-ins */ C-unsetup C-comntLn
F9
F10
Help HelpFile ShowVals Refresh Colors ASCIIhelp
UpArrow UpLine UpScreen CursrTOS CursrTOF %move %move
DnArrow DownLine DnScreen CursrBOS CursrEOF %mouse %mouse
LtArrow LeftChar LeftWord LeftScrl CursrBOL % " % "
RtArrow RightChar RightWord RightScrl CursrEOL % " % "
----------------------------------------------------------------------------
tcmds
Miscellaneous extra commands
Temporary command: loading of Amiga files
<alt-a: loadFile("s:Amiga/T2") loadFile("s:Amiga/Reference&History")
loadFile("s:Amiga/Articles") loadFile("s:Amiga/PDS")
loadFile("s:Amiga/Products") >
Load notes file
<shftAltCtl-z: loadFile("sys:MiscNotes")>
Temporary command: loading of Ustar files
<alt-l: loadFile("s:UstarConfig!") loadFile("s:UstarDoc")
loadFile("s:UstarHelp!") >
hilite-left-one-space
<alt-m:
moveCursor(curFile,sHilite)
if (not is(curFile,sLine)) moveCursor(curFile,sLine)
label(1)
if (is(curFile,space)) clearChar(curFile)
if (not is(curFile,eLine)) moveCursor(curFile,eLine)
moveCursor(curFile,eChar)
if (gtLoc(curFile,eHilite,atCursor)) goto label(1) >
hilite-right-one-space
<alt-m:
moveCursor(curFile,sHilite)
if (not is(curFile,sLine)) moveCursor(curFile,sLine)
label(1)
if (gtLoc(curFile,eHilite,atCursor)) {
insertChar(curFile," ")
if (not is(curFile,eLine)) moveCursor(curFile,eLine)
moveCursor(curFile,eChar)
goto label(1) } >
Give character set and loc info for character at cursor (a debugging tool)
<alt-m:
freeBuf(buf99)
if (is(curFile,whiteSpace)) insertRgn(buf99,sFile,"whiteSpace ",all)
else insertRgn(buf99,sFile,"NOTwhiteSpace ",all)
if (is(curFile,ctlChar)) insertRgn(buf99,atCursor,"ctlChar ",all)
if (is(curFile,alpha)) insertRgn(buf99,atCursor,"alpha ",all)
if (is(curFile,digit)) insertRgn(buf99,atCursor,"digit ",all)
if (is(curFile,space)) insertRgn(buf99,atCursor,"space ",all)
if (is(curFile,9)) insertRgn(buf99,atCursor,"tab ",all)
if (is(curFile,formFeed)) insertRgn(buf99,atCursor,"formFeed ",all)
if (is(curFile,eLine)) insertRgn(buf99,atCursor," eLine ",all)
if (is(curFile,sLine)) insertRgn(buf99,atCursor," sLine ",all)
if (is(curFile,eFile)) insertRgn(buf99,atCursor,"eFile ",all)
if (is(curFile,sFile)) insertRgn(buf99,atCursor,"sFile ",all)
if (is(curFile,ePage)) insertRgn(buf99,atCursor,"ePage ",all)
if (is(curFile,sPage)) insertRgn(buf99,atCursor,"sPage ",all)
if (is(curFile,eForm)) insertRgn(buf99,atCursor,"eForm ",all)
if (is(curFile,sForm)) insertRgn(buf99,atCursor,"sForm ",all)
if (is(curFile,blankLine)) insertRgn(buf99,atCursor,"blankLine ",all)
if (is(curFile,tabColumn)) insertRgn(buf99,atCursor,"tabColumn ",all)
if (eqLoc(curFile,atCursor,locA)) insertRgn(buf99,atCursor,"locA ",all)
if (eqLoc(curFile,atCursor,locB)) insertRgn(buf99,atCursor,"locB ",all)
putMsg(buf99)
>
Strip Hi bits from file
<alt-m: equateLoc(curFile,locA,atCursor) moveCursor(curFile,sFile)
putMsg("Stripping all hi bits, wait...")
while (copyChar(curFile,n99)) {
if (gtNum(n99,127)) { sub(n99,n99,128) swapChar(curFile,n99) }
moveCursor(curFile,eChar)
}
putMsg("Hi bit stripping done")
equateLoc(curFile,atCursor,locA) refreshDisplay
>
Test what getChar works on
<alt-m: putMsg("Test getChar() - press keys - active? Amiga-ESC aborts")
while(nothing) { freeBuf(buf99)
getchar(n99) toWord(buf99,n99) putMsg(buf99) }>
Show actual Uedit keycode of a key
<alt-m: putMsg("Press keys to see their raw keycode (Amiga-ESC aborts)")
while (nothing) {
freeBuf(buf99)
getKey(n99) toWord(buf99,n99) putMsg(buf99)
}>
Make an in-use keytable
<alt-m:
putMsg("Creating key table, please wait...")
freeBuf(buf99)
insertRgn(buf99,sFile,
"1 ! 1
2 @ 2
3 # 3
4 $ 4
5 % 5
6 ^ 6
7 & 7
8 * 8
9 ( 9
0 ) 10
- _ 11
= + 12
\ | 13
--------14
kp0 15
Q 16
W 17
E 18
R 19
T 20
Y 21
U 22
I 23
O 24
P 25
[ { 26
] } 27
--------28
kp1 29
kp2 30
kp3 31
A 32
S 33
D 34
F 35
G 36
H 37
J 38
K 39
L 40
; : 41
' \" 42
--------43
--------44
kp4 45
kp5 46
kp6 47
--------48
Z 49
X 50
C 51
V 52
B 53
N 54
M 55
, < 56
. > 57
/ ? 58
--------59
kp. 60
kp7 61
kp8 62
kp9 63
Space 64
BS 65
Tab 66
kpEnter 67
Return 68
ESC 69
DEL 70
--------71
--------72
--------73
kpMinus 74
--------75
upArrow 76
downArrow
rightArrow
leftArrow
F1 80
F2 81
F3 82
F4 83
F5 84
F6 85
F7 86
F8 87
F9 88
F10 89
--------90
--------91
--------92
--------93
--------94
Help 95
buttonDn96
buttonUp97
Gadget1-98
Gadget2-99
Gadg3--100
Gadg4--101
CloseBx102
` ~ 103
",all)
editBuf(buf99)
equateNum(n99,0) .. outer loop prefix counter
do (n99,0,10) {
moveCursor(buf99,sFile) vScroll(sFile) refreshDisplay
do(n98,1,103) { .. inner loop key counter
mul(n97,n99,104) .. prefix,
add(n97,n97,n98) .. plus key, gives value
moveCursor(buf99,eLine)
if (inUse(n97)) insertChar(buf99,"X") else insertChar(buf99,"-")
insertRgn(buf99,atCursor," ",all)
}
}
insertRgn(buf99,sFile,"
Master keytable for current status of Uedit
X Key in use - Key not in use ---- Non-key or Europe
Any specific key value is: (prefix * 104) + KeyCode
KeyName Norm Shft Alt SA Ctl SC AC SAC lAmi rAmi Virtual
| |0 |1 |2 |3 |4 |5 |6 |7 |8 |9 |10 {-- Prefix
v KeyCode | | | | | | | | | | |
v
",all)
vscroll(sFile) refreshDisplay
putMsg(" ")
>
If a key isn't in use, such as normal letter keys, it will do its "normal"
thing.
-----------------------------------------------------------------------------
WS4fk
Wordstar 4 Default Function Keys
A set of optional commands for Ustar to add WS4 function & numeric keypad
equivalents.
Duplicates WS4 use of function and cursor keys, but thus knocks out
most all Ustar function keys. Also remaps two arrow keys.
Alt-function keys for line/box drawing not implemented, since the default
Amiga character set doesn't include them. Of course, you could design your
own font and add this capability if desired.
Normally inactive. Append this section to UstarConfig! if you want to use it.
..To activate, change below all ..! sequences to < and compile these cmds
..To deactivate, change below all < characters to ..! and compile UstarConfig!
..!normal-f1: runKey(normal-help)> .. help
..!normal-f2: runKey(ctl-u)> .. undelete (doesn't do abort func)
..!normal-f3: runKey(shftAltCtl-s)> .. underline
..!normal-f4: runKey(shftAltCtl-b)> .. bold
..!normal-f5: runKey(ctl-y)> .. line del
..!normal-f6: runKey(ctl-t)> .. word del
..!normal-f7: runKey(shftAlt-u)> .. reformat rest
..!normal-f8: runKey(altCtl-i)> .. closest thing to embed ruler
..!normal-f9: runKey(shftCtl-s)> .. save file
..!normal-f10: runKey(shftCtl-d)> .. get file (closest equal)
..!shft-f1: runKey(altCtl-d)> .. ctl char display
..!shft-f2: runKey(altCtl-c)> .. center line
..!shft-f3: runKey(shftAlt-l)> .. spell rest
..!shft-f4: runKey(shftAlt-n)> .. spell word
..!shft-f5: runKey(shftCtl-y)> .. delete block
..!shft-f6: runKey(shftCtl-h)> .. hide block (not toggle)
..!shft-f7: runKey(shftCtl-v)> .. move block
..!shft-f8: runKey(shftCtl-c)> .. copy block
..!shft-f9: runKey(shftCtl-b)> .. block start mark
..!shft-f10: runKey(shftCtl-k)> .. block end mark
..!ctl-f1: runKey(shftAlt-f)> .. find
..!ctl-f2: runKey(shftAlt-a)> .. find/replace
..!ctl-f3: runKey(shftAlt-l)> .. repeat find/replace
..!ctl-f4: runKey(shftAlt-i)> .. goto page
.. ctl-f5: no equal .. left margin
..!ctl-f6: runKey(altCtl-r)> .. right margin
..!ctl-f7: runKey(altCtl-g)> .. rough equal to .pm
..!ctl-f8: runKey(shftAltCtl-l)> .. pagebreak
..!ctl-f9: runKey(shftAlt-s)> .. sol
..!ctl-f10: runKey(shftAlt-d)> .. eol
keypad stuff (normal arrows already OK)
..!normal-kp4: moveCursor(curFile,sChar)> .. left char {--
..!normal-kp6: moveCursor(curFile,eChar)> .. right char -->
..!normal-kp8: moveCursor(curFile,upLine)> .. upline ^
..!normal-kp2: moveCursor(curFile,downLine)> .. downline v
..!ctl-rightArrow: runKey(ctl-f)> .. right word ^-->
..!ctl-kp6: runKey(ctl-f)> .. right word ^-->
..!ctl-leftArrow: runKey(ctl-a)> .. left word ^{--
..!ctl-kp4: runKey(ctl-a)> .. left word ^{--
..!normal-kp9: runKey(ctl-r)> .. pageup PgUp
..!normal-kp3: runKey(ctl-c)> .. pagedn PgDn
..!normal-kp7: runKey(shftAlt-e)> .. top screen Home
..!normal-kp1: runKey(shftAlt-x)> .. bot screen End
..!ctl-kp9: runKey(ctl-w)> .. up scroll ^PgUp
..!ctl-kp3: runKey(ctl-z)> .. down scroll ^PgDn
..!ctl-kp7: runKey(shftAlt-r)> .. top doc ^Home
..!ctl-kp1: runKey(shftAlt-c)> .. bot doc ^End
..!normal-kp0: runKey(ctl-v)> .. ins Ins
..ctl-kp/: runKey(shftCtl-s) runKey(shftCtl-p)> ^PrtSc A2000 - future
If the function keys above are implemented under Ustar, you should
add these additional commands as well, at a minimum, to replace
important Ustar Function keys normally used.
So can toggle num lock
..shft?-kp(: .. for A2000 key, once available
..!shft-kpMinus: flipFlag(curFile,useKeys) .. use this key for now
if (getFlag(curFile,useKeys)) putMsg("Numeric Keypad")
else putMsg("Cursor Keypad")->
Next file F1 function: (could just use Next Buffer gadget and not use this)
..!lAmiga-f1:
getBufNum(n99)
getMaxFiles(n98)
if (geNum(n99,n98)) {
editBuf(buf[n82])
}
else {
toggle(curFile)
getBufNum(n82)
}>
Compile Cmd F6 replacement:
..!lAmiga-f6: compile>
Load Config C-F6 replacement:
..!lAmiga-f7: if (askYesNo("Load Data File?")) {
putMsg("Filename (none for Data! or last saved):")
freeBuf(buf99) inputString(buf99)
if (not loadConfig(buf99)) {
putMsg("ERROR - Couldn't get Data! file.") beepDisplay returnFalse
} } >
----------------------------------------------------------------------------
uedifs
Uedit Compatibility Notes
Keys that are still (basically) the same as the standard version Uedit:
o LeftAmiga-esc: STOP process o RightAmiga-esc: STOP process
o C-mouse: click-load files o mouse-button: deposit cursor
o closeBox: quit gracefully o SAC-Z: Auto-start command
o gadget1: next file o gadget2: prev file
o gadget3: down scroll o gadget4: up scroll
o f1: Next file o S-f1: Prev file
o f6: Compile o S-f6: Make command
o A-f6: Save Data! o C-f6: Load Data!
o Help: Get/clear Help o S-help: Show vals
o C-help: Refresh o A-help: Colors
o A-esc: Lace color o S-esc: Interlace
o Arithmetic commands: Same keys but Alt prefix instead of Ctl
o SC-Tab: Tabs to spaces o SA-Tab Spaces to tabs
Following are UEdit commands provided in the standard Uedit Config! file,
not being implemented, and not planning to implement. Anything not noted
here is implemented, though it may be quite different than standard Uedit.
o Raw reformat command - Ustar version generally safer and better. If need:
<alt-m: reformat>
o Restore file - just use ^KD again, last name is retained as default.
o Free all buffers - too dangerous!
o Inverted vs. hilited - using only hilites, using inverts for finds and
other uses; no need for uninvert (search on nothing will do if
necessary).
o Insert line above/below current line - why need? use Learn if needed
o Delete line above/below current line - why need? use Learn if needed
o Open space in front of word - use ctl-spacebar or plain spacebar
o Trim spaces between words - use ^T
o Shift highlight right/left one char. pos'n - why? See tcmds if need.
o Open up/Join two lines - use ^N, ^G, ^T..., or Learn, or write cmd.
o Line up columns - substitute Indent Align or Right-Align or ^T, Learn.
o Go to line# - not as useful as ^Kn and goto page, which are implemented.
Can do via Learn mode, or set lines/page to 1 and use goto page ^QI.
o Delete to top/bottom of screen - see little use; do with Learn or mouse.
o Gadgets rename - would have to redo commands anyway; set in defaults.
o Saving of deleted characters - not useful, can almost always figure
out deleted characters from context. Words, lines, blocks are saved.
o Set start of hilite and end of hilite separately with mouse- substitutes.
o Clear leading white space - not necessary, ^T with Learn will do it.
----------------------------------------------------------------------------
usfiles
Files/Programs Used
Program DOS? Function Notes
------- ---- -------- ------------------------------------
avail - AC-kp8 Show system memory
xe - ^QM Calculator
addBeep - SA-kp7 beepDisplay gives audio beep
remBeep - SA-kp7 beepDisplay give display flash
spell - ^QL,^QN,^QO MicroSpell spelling checker
Dir Y V-kp4 For ^KF,ctl-mouse **
List Y ESC ? ? Identifies macro files
Delete Y ESC ? macro Get rid of a macro file,
and AC-mouse Delete a file
Date Y ESC @, ESC ! Insert date or time **
Filenote Y ESC ? macro Identifies a macro file
CD Y ^KL, ^KF Change or show current directory
Run Y spell,xe,etc. Run a program without hanging Uedit
Info Y ^KF Device (disk) info
All of the above commands will be searched for along the system Path defined
when Uedit was started up. Other files described here will need to be in the
current directory.
** If original AmigaDOS 1.2 command not used, changes will need to be made to
Ustar code for functions to work properly.
Text Files Search
Sequence
----------
UeRef CD, s: A-Q Uedit command language reference
UstarTutor CD, s: A-U Tutorial on WordStar/Ustar
UstarHelp! CD, s: Help General help
ASCII CD, s: SC-Help ASCII table
UstarKeyHelp s: A-T, A-D Describes keys' actions
Spelling Files (used with MicroSpell)
-------------------------------------
dict.dct CD ^QL,^QN,^QO Main dictionary
common.txt CD " Common words
Ustar Files
----------
UstarData! (or Data!) CD, s: Configures Uedit to be Ustar
Learn - load file CD, s: Learn (Macro) files
Learn - save file CD "
NoName.info CD?, s: Template icon to save with files
-----------------------------------------------------------------------------
dotcmds
Unimplemented Dot Commands
The following dot commands are not supported, but could be relatively easily:
.f#, .h# Multi-line headers/footers .hm, .fm Heading Margin, Footing Margin
- rather than specifying where
in the margins the header or footer should go, I just
(approximately) center it.
.pn Page Number - page number to start at (1 is default)
.pg PaGe number default - restores page numbering to default
.lm * Left Margin - use .po instead
.lq Letter Quality - (I don't have LQ printer; if you do, use ^PX)
.sr Super/Subscript Roll - limited Preferences support;
use ^PV, ^PT as close substitutes
.ul UnderLine, continuous - ^PS implements underlining through
Preferences, which on most printers will probably be
continuous underlining anyway
These are simply not needed:
.op Omit Page - there is no default page numbering like WS has, so
there's no need to turn off default page numbering.
.pc Page # Column - no need, is for default page numbering - in
Ustar, user specifies where in header/footer the page # is.
.cp * Conditional Page - it would be a lot of work to add this, and
it isn't really needed since the Preview mode lets you adjust
page break points as desired.
These would be difficult to implement properly, due to Amiga or Uedit
limitations:
.lh * Line Height - Preferences only supports 1/8" and 1/6" line
heights/spacing, so this would be hard to do in a device-
independent way.
.ls * Line Spacing
.uj Microjustification - not supported
.ps Proportional Spacing - could add Prefs code
.bn BiN, sheet feeder change - not supported in Preferences
.bp Bidirectional Printing - no Preferences support, no need
.cw Character Width - no direct Preferences support;
use print controls (e.g. ^PA) instead as limited substitute
These reflect the basic differences between Ustar and WS, not implemented:
.rm * Right Margin - user must format doc before printing.
.aw *?Alignment/Wordwrap - "
.oj Justification - "
.pf Print-time Formatting - "
.x? .xw, .xq, .xr, .xe, .xl - temp. redefine 5 ^P commands
* In WordStar, these may also affect on-screen document formatting, primarily
page breaks. This is not true in Ustar. So, the following additional dot
commands, which affect only on-screen formatting/editing, are likewise not
supported:
.rr Read Ruler - tab/margin ruler specified is in effect past this
point in document
.pm Paragraph Margin - number of characters to indent the first
line of a paragraph upon reformatting. (Actually, could
implement this).
Mailmerge in the WordStar way is not supported. It could be implemented, but
it would be a huge set of commands, and I have never used this feature much.
So, the following dot commands are not implemented:
.dm Display Message (e.g. during mail-merge)
.cs Clear Screen - ditto
.fi File Insert at print time
.rp RePeat - print file n times
.sv Set Variable
.ma MAth - Set variable to result of equation
.av Ask user for data for Variable
.rv Read Variables from data file
.df Data File specify for .rv to use
variables: &varname& to substitute, various options incl. date, time...
operators: usual relational operators
.if Conditional print
.el ELse - for .if
.ei End If - for .if
.go Go to top/bottom of document
.ij (WS3) Interpret input as Justified
Indexing and table of contents through dot commands is not supported, though
it wouldn't be all that difficult to add it, since commands to do indexing
(directly) are already present in Ustar. So, these aren't supported:
.ix Define IndeX entry
.tc [#] Define Table of Contents entry, optional table # spec
----------------------------------------------------------------------------
Description of Ustar's Reformat command
See UstarConfig! for details.
See UstarDoc for definition & examples of delimiter lines.
reformat() here indicates Uedit's reformat function as opposed to Ustar's.
Start:
If cursor isn't at col. 1, set a flag for outline type formatting.
See what kind of line it is - outline type or paragraph type. If neither
(empty line), go to Exit.
Set "bullet-text start" point depending on flag set above and kind of line.
Convert any tabs in beginning of line into spaces, for correct operation
later.
If outline type, save, then space-fill, the "bullet" area from start of line
to "bullet-text start".
If more than one line, match lines to the indent of the first line, until a
delimiter line is encountered. (This is so that reformat() won't stop on
encountering different indents). Add an extra blank line so reformat()
doesn't run into the delimiter line. Mark delimiter location.
Do main reformat()
If a paragraph, and not auto-indent mode, do additional formatting: separate
subsequent lines from the first line of the paragraph, reformat() this
section of lines (so they will now wrap to column 1), then put back together.
This corrects formatting for paragraphs with an indented first line.
If an outline type item, restore the "bullet" area saved previously, and
also clear hilited area caused by UE column copy function.
Exit:
If normal processing occurred, and was not a bulleted item, remove blank line
added at delimiter location. Set cursor, turn off invert, and put out a
message. Return true unless at end of file.
---------------
Bugs: If a reformat() results in a last line (of the reformatted block) that
ends exactly one character past line length, then it will not wrap to the
next line, leaving said character sticking into the margins like a sore
thumb. No fix known.
----------------------------------------------------------------------------