!OutBack character cache/command archive | GetBack for nbWin/xyWin || <compass> | <toc>


most recent revise 4 july 2001
Clearing the xyWrite command line to run an xpl pgm wipes out four pieces of information that if known would let the pgm work as subtly as a function. Assembling any three of the four isn't difficult for experienced xpl programmers, but seizing all four defeated the most ingenious. They'd already gratefully moved on from v3 to xyDos 4 when !xyWise came along.

When you press a key where !xyWise's &C replaces BC in your kbd file, !xyWise--besides clearing the CMline--in service to other xpl in effect creates four crucial va$s xyWrite 3 doesn't record. &C profiles and preserves the at-launch:

* CMline content intact (no broken characters!)
* CMline cursor position
* CMline/text cursor location
* Insert/Overstrike state
That ain't chopped liver. Even after it had been done, the great declarer--who'd slain scarier dragons--was still declaring it couldn't be done in xyWrite 3+.

Herb Tyson revealed to the world how to save the CMline string to an &ldpm--certainly valuable information as far as it went. But The Book fails to address how to keep all CMline chars--even search/s&r wildcards--intact and how to keep a newline from trying to execute the string up to the point where it occurs when the string is returned to the CMline. CMline manipulation that omits an exception handler for xyWrite's use of nulls leaves the job half done. !xyWise is comprehensive only because of Robert Holmgren's revelations on that arcane topic, and his generous clarifications.

Frame $P brings the most recent command &C saw back to the CMline, and $P also can write the current file name (nice for file management) or cursor position to the CMline. !xyWise func XC substitute Frame $X loads Help frames and launches !xyWiz programs; you don't even have to type "run." Documentation suggests interesting ways to mix the auxiliaries.

In hope you can spare three of the 36 xyWrite provides, !xyWise asks you to sacrifice s/gs @B, @C, and @D so you can manage the text buffers easily with everyday XyQuest tools. !xyWise uses resources that call on permanent memory (as s/g@[A-Z/0-9], >99 variables, ldpms, and Help frames do) only when no alternative offers itself, but one usually does: Thus !xyWise's runtime libraries, oft-used procedures that occupy memory only during a pgm's run.

!xyWise and !OutBack libraries seemed to achieve maturity with the Valentine's Day 1999 release except for one trivial &C bug, since swatted. Runtime libraries, however, do change. The newest streamlines swapping print drivers, e.g., to print email to disk or--especially--if you work with a memory-friendly screen driver and load a hard-copy driver only while printing. new! 10 october 2000
You don't do that? It's all gain, no pain. Documentation explains why, and how you can start doing it. The library also writes and loads small drivers on the fly, eliminating a bit of disk clutter.

!xyWise setup, in the past a slapdash afterthought here that burdened the user unduly, is now automatic except for the necessity, if you're prepping !xyWise for the first time, to edit custom.kbd (boring but--hey, what are &[0-9/A-Z]s and $[0-9/A-Z]s for, after all?). If you used !xyWise when $X, $P, $S, and $K were &X, &P, &S, and &A you'll need to do quick ci's in your custom.kb3 for those four.

The overlay's structure is fragmented for versatility and to minimize memory overhead. No, not as orderly as Help frame programming--confining all procedures and programs to a Help file--but far more memory-conservative. When xyWrite makes so many resources available, an excessive devotion to tidiness is the only explanation I can think of for the impulse to lean exclusively on one instead of using the one best suited to the task.

If you're an xpl programmer or would like to be, take a look at the xplWise page for more on !xyWise's structure and information on !xyWise xpl documentation.

No need to groan

when you must overwrite a carefully constructed crossfile search or do pkunzip command, or you realize you backspaced the wrong text. A vivid example of the way !xyWise expands xyWrite 3 possibilities, !OutBack maintains caches that let you get back commands and characters you took out accidentally or for use later. No stupid menus!     

!OutBack commands archive @B

Automatically @Buffer the command every time you clear the CMline, deleting the oldest of a fixed number with each addition, or keep a @Buffer of most-used commands, tapping your $Keep key to archive a displayed command manually; tap a !xyWiz !B key to delete the displayed command from the @Buffer. You can tap another key to cycle quickly through @Buffered commands. Rotation keys reveal the number of commands archived and advance or reverse the @Buffer, bringing the next or previous command to the CMline.

!OutBack character cache @D

Restore &Deleted or &Backspaced chars to text--anywhere--one by one, LIFO, from the @Delete cache by tapping your new &Get key. Buffering occurs transparently every time you delete and backspace. If you've ever used a word processor that has a like feature you're familiar with the security of knowing you can undo accidental deletions with a key tap, and the convenience of its use as a tool for making small edits.

new! 4 july 2001

Why should xyWin and nbWin users be deprived? The !OutBack character cache now also is a standalone port named GetBack--and look, Ma, no &ldpms or @s/gs (it uses a >99 s/g instead of an @s/g). Actually, I once was told that Signature+ (xyWrite 4 for both platforms and xyWin's successor, SmartWords->nbWin) do something like this, but I've never discovered how and I fear it involves (argh) dialog boxes. Fersure, Sig+ stack commands, hence no public port of the !OutBack command archive, hence the different name. I may withdraw GetBack in favor of OutBack for nbWin/xyWin anyway; other dialog boxophobes might prefer OutBack's command stack scheme to the one built into Sig+, which I've never tried. BetterThanAverageTaggingTool for xyWin/nbWin was delayed for the amount of time it took me to debug GetBack. I can't work without it. If you try GetBack with xyDos4, please let me know how it works with that release.


!xyWise: the small print
Setup: Prep !xyWise, and !xyWiz and !xyWWWiz are ready to go. !xyWise setup now is a piece of cake except for the need to add several sequences to your custom.kbd to get the most out of the utilities; integration issues are well-documented. If programming xpl doesn't interest you, you still can put !xyWise to work expanding your custom.kbd's control. Documentation gives examples of the many ways you can apply !xyWise and auxiliaries. !xyWise's longterm benefits are well worth the few minutes editing your custom.kbd takes.

Requirements: Whether or not you try !xyWise, if you use a release earlier than v3.55 do take advantage of the free upgrade noted in the xyWrite resources page first "... and there" item. But !xyWise does require xyWrite 3.55 or later. Unzipped, set up, and excluding documentation, !xyWise including required Help frames and !xyWiz are <120k in 18 files; !xyWWWiz is <21k plus a >290k html color chart. With documentation, the package produces more than a screenful of files--the down side of !xyWise's tenacious efforts to conserve memory. The alternative would be to tax permanent memory by framing all the code in Help. Bad idea. Testimony consistently suggests that profuse Help pgms destabilize the otherwise famously robust xyWrite 3. The only people who complain of inexplicable xyWrite 3 crashes and xpl pgms running out of memory before finishing or shaky 300k files are the same xyDos 4 xpl programmers who insist that putting all xyW3 programs in one permanently loaded library is a swell idea. If you don't author Web pages or program xpl you can safely delete the individually zipped !xyWWWiz and xplWise.

Compass: The table of contents at the end of each linked page at this site lets you shift laterally to other local pages, get back to the xyWrite and xyW/PostScript index page ("overview"), download the zipped files the docs describe, and explore other resources.


more about  ...

!xyWise modular utilities !xyWiz
!xyWiz Web assistant !xyWWWiz & xy/nbWin port
!xyWWWiz html color chart
(you are here) xyWrite 3+ overlay !xyWise + !OutBack & xy/nbWin port GetBack
xplWise tech reference and instructions
. Make legacy apps eternal: get the NAQ
PostScript Type 1 font xyWrite driver tables

. xyWrite???

non-xyW kbd notes
xyWin/nbWin notes
Signature+ xpl notes
linuXyW notes
unrelated .EXEs

download ...

  • aw_hec
    readout (<16k)

TTG free kernel upgrades:
> xyWrite 3 (see <overview> notes re autoreplace and login ! )
xyWrite 4--Windows and dos (read FILE.TXT at the link)

adpFisher nyc 4 july 2001