home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware 1 2 the Maxx
/
sw_1.zip
/
sw_1
/
EDITORS
/
VDE164.ZIP
/
VDE.REF
< prev
next >
Wrap
Text File
|
1992-08-14
|
76KB
|
1,164 lines
VDE.REF
-------
Reference Manual for the VDE Editor:
version 1.64 (14 Aug 1992)
(c)1987-92, E. Meyer
================================ CONTENTS ==================================
(For QUICK START, SYNTAX, GENERAL INFORMATION etc. see the file VDE.DOC)
6. COMMAND REFERENCE, alphabetically by topic:
Auto format, Auto indent, Auto number, Auto save, Block commands,
Data files, Deleting, Envelopes, Files, Find/replace, Foreign
characters, Graphics, Header, Hyphenation, Information, Inserting,
Justification, Line spacing, Margins, Matching files, Moving around,
Multiple files, Page preview, Pagination, Paragraph indent, Place
markers, Print styles/codes, Printer drivers, Printing, Proportional
spacing, Reformat, Ruler line, Run command/shell, Save/exit, Screen
controls, Screen size, Splitting files, Tabs, Time/date, Undelete,
Upper/lower case, Windows.
7. MACROS. Explanation and examples of:
Autoexec macro, Function keys, Key redefinition files, Macro
definition and use, Macro keys, Macro programming, Toggle control,
Recording macros.
8. REVIEWS / ABOUT THE AUTHOR.
(For use of the VINST installation utility, see the file VINST.REF.)
========================== 6. COMMAND REFERENCE ============================
AUTO FORMAT (^OM) - When on, continuously keeps the paragraph of text you are
working on properly formatted (margins and spacing), even as you add to or
delete from the line; format changes are implemented instantly. When off,
the manual ^B command can still be used (see REFORMAT). [Default status
can be chosen.]
Care must be taken in files with mixed formats, as the CURRENT
settings of margins and spacing are always used.
Note that with Auto Format on, certain keystrokes may have additional
(or no) effects, due to immediate reformatting afterward; and some
operations like Find/Replace may be noticably slower.
AUTO INDENT (^OA) - When on, wordwrap or the [Enter] key will cause the
cursor, upon moving to the next line, to indent to match any existing
indentation on that line (with insert OFF) or the previous line (with
insert ON). Thus any structured indentation you create is maintained.
Useful as a temporary (paragraph) indent, or for outlines, program source
code, etc. Works in all modes, including nondocument. Note: Indentation
must be done with spaces or variable tabs, NOT with hard tabs.
AUTO NUMBER (^K#) - VDE can automatically number items in a list. Just type
a "#" character where each number in sequence should go, for example:
#. First item.
#. Second item...
You can then mark the list off as a block (see BLOCK COMMANDS), and use
the ^K# command: VDE will insert the numbers (1, 2, etc) in place of the
"#" markers. You will be asked for the starting number; the default is of
course 1. (Once this is done the markers are gone. For frequently
revised lists, leave the "#" markers in the file on disk; use ^K# just
before printing, and do not save afterward.) If auto format (^OM) is on,
text will be realigned to compensate for varying length numbers.
AUTO SAVE (^KA) - When on, VDE saves any changes you have made to disk
automatically, at regular intervals. This ensures that you don't lose too
much work if you make a mistake, have a power outage, etc. ^KA lets you
set the interval (1 to 255 minutes), or turn this feature off entirely
(0). Just press [Enter] to restore the default, normally 0. [This can be
changed with VINST.]
Notes: Auto save does not actually occur during intervals when the
keyboard is not in use, or while you are editing another file. It cannot
save untitled files.
BLOCK COMMANDS (^KB,^KK,^KH,^KZ,^KY,^KC,^KV,^KW; ^QB,^QK; ^KPB) - A BLOCK of
text is delimited by two markers, set by ^KB (beginning) and ^KK (end),
which remain in place until reset elsewhere or deleted. Alternatively,
you can mark a block by moving the cursor to the start or end, holding
down the Shift key, and using the PC arrow keys, [Home, End], or [PgUp,Dn]
to move the cursor to the other end of the block, releasing the Shift key
when finished. In any case, ^KH unmarks the block, removing any marker(s)
set.
The block move and print commands (^KV,^KPB) require a block to be
fully marked before use. To save keystrokes, the other block commands
(see also ^K#,^K",AltC), if used when only one block marker is present,
will mark the current cursor position as the other end of the block:
^KY goes to and deletes the block (including markers). (If you want
to return the cursor to its position before the deletion, type ^QP.)
^KV moves the block (including markers) to the present cursor
location; ^KC simply copies it, leaving the original marked. Any place
markers present are not transferred. (The cursor cannot be IN the block.)
^QP may be used to return to the former position of a moved block.
^KZ "zooms into" a block: the rest of the text is hidden, and the
block is temporarily treated as the entire file. This can simply isolate
one portion of a file for your attention; it can also be done to limit the
scope of many VDE commands (^QA, ^B, ^KI, etc) to that portion. Use ^KZ
again to zoom back out. In zoom mode, pagination is off; you can use
block operations, though any block markers within will disappear when
zooming back to the whole file. (This will also happen if you save (^KS,
etc) since the save function zooms briefly back to the whole file.)
^KW writes the block text to a disk file; you will be asked for the
filename (and optional mode). You can also choose to append the text to
an existing file by typing a "+" before the filename, as in:
Write to file: +GORT
(If you don't specify "+", and the file already exists, VDE will ask
whether you want to overwrite or append; press Esc or Space to cancel.)
^QB, from wherever you are in the file, moves the cursor to the block
start; ^QK moves to the block end.
^KPB (^KP with B option) prints the block text only. (See PRINTING.)
DATA FILES (AltU) - AltU allows you to change many VDE settings by using
(loading or saving) specific types of data files.
.VDF/K files can be Loaded and Saved - see KEY DEFINITION FILES.
.VDG files can be Saved - see GRAPHICS (CHARACTERS).
.VDP files can be Loaded - see PRINTER DRIVERS.
.VDC files can be Loaded - see CHARACTER WIDTHS.
.VDI files can be Loaded - see INSTALLATION, USER OPTIONS.
Any of these may also be loaded with a semicolon on the command line (see
SYNTAX). Files must be in either the specified, current, or VDE directory
(specified with the SET command -- see DIRECTORIES).
Note: in the event that VDE cannot load a data file created by an
earlier version, VINST can usually convert it by reading the old file and
writing it back to disk in the new format.
DELETING (^G,[Del],^T,^Y; ^QY,^Q[Del],^QT) - ^G deletes the character at the
cursor. Normally, [Del] or ^[BkSp] deletes the one to the left, and
[BkSp] (^H) moves left without deleting. [Instead, [BkSp] may be instal-
led to delete to the left, and [Del] to delete at the cursor.]
^T deletes a word to the right (everything from the cursor to the
next word break.)
^Y deletes the entire current line. ^QY deletes just the part of the
line to the right of the cursor; ^Q[Del] deletes the part to the left.
^QT, followed by a character, deletes everything until the next
occurrence of that character. EXAMPLE: ^QT. (period) deletes to the end
of the sentence. Special cases: ^QT^M (^QT[Enter]) deletes to the next
HARD CR, the end of the paragraph; ^QT^Z deletes to the end of the file.
Unintended deletions can be recovered (see UNDELETING).
ENVELOPES (^KPA) - VDE provides an easy way to print a single envelope to
accompany a letter, via the "A"ddress option of the print command:
1. Begin by moving the cursor to the address of the recipient, and
marking this as a block (see BLOCK COMMANDS):
{Chester Fludd
193 Lakota St "{}" = block markers
Norman, OK 73069}
2. Then use the print command (^KP), and at the options prompt, type
"A", followed by "1" or "2" to specify the envelope size: 1 for smaller
(letter) size envelopes, about 3.625 x 6.5"; 2 for larger (business) size,
4.25 x 9.5".
3. Optionally, you may include a return address for the upper left
corner of the envelope: enter this in "double quotes", using a backslash
(\) to mark the beginning of a new line. Example:
Options: A2"Your name\Your street\Your city"
(You may find it convenient to set up envelope printing with your usual
return address as a macro key, if you will use it often. See MACROS.)
4. Load the envelope correctly in your printer, and press [Enter] to
print it. Then you can continue to edit or print the letter itself.
NOTES: Different printers handle envelope feeding in
various ways. VDE prints the address(es) in the
appropriate format; you have to ensure that they wind up on
the envelope. With some dot matrix or wheel printers, you
can feed in a single envelope, and manual positioning on
the platen may be sufficient. With other printers, a
separate tray is available for envelopes, and you will need
to install special codes to select the proper tray. Many
laser printers expect to feed envelopes sideways, so you
will need codes to print in a landscape font. [Any control
codes needed to prepare your printer for an envelope can be
added with VINST; see PRINTER INSTALLATION.]
Because of the way laser printers operate in landscape
mode, VDE ordinarily prints both size envelopes with their
RIGHT edge in the same place. This means that on other
printers, the LEFT edge of the smaller envelope must be
placed 3" (30 columns) in from the left margin. If this is
inconvenient, it can be overridden by specifying the left
margin option (e.g. "L0") AFTER the "A1" option.
FILES (^KL,^KR,^KJ,^KF) - ^KL loads new file(s) to edit, REPLACING the
current one. (If the file has been modified, you will be prompted to
confirm that you mean to abandon it; if you want to load file(s) in
ADDITION to the current one, use AltL instead.) You can enter any number
of filenames, with optional modes (see SYNTAX).
^KR reads in the contents of a single disk file, inserting the text
at the current cursor position.
^KJ deletes any disk file you specify. (If you need more complex
file utilities, remember that you can run any DOS command with AltR.)
All these commands prompt for specific filenames. If you are unsure,
and want to pick a name from a directory listing, you can call up the FILE
BROWSER display by pressing [Enter] alone for *.*, or typing any filename
with wildcards, like *.LTR. (Note: if you mean to load an "untitled"
file, press ^J or ^[Enter], instead of [Enter], at the ^KL prompt.)
Files display alphabetically in uppercase, then directories in
lowercase (beginning with the parent directory ".."). If there are more
items than will fit on screen, you will see "..." at the top or bottom to
indicate this. [Note: VINST can suppress display of .COM, .EXE and other
unreadable files unless you specify such a filetype explicitly.]
You can move the cursor through the list with the arrow keys,
[PgUp,Dn], or [Home,End]; additionally, a letter "A-Z" may be typed to go
to the next file beginning with that letter, or "\" to go to the next
subdirectory. When the cursor is on a subdirectory, pressing [Enter]
allows you to view its contents in turn; when it is on a file, pressing
[Enter] selects that file to complete your command. You can quit by
pressing ^U, or switch to the full file browser with [Esc] or [Space].
^KF brings up the file browser directly; you may specify a drive,
directory, and/or filename mask, and the contents will be alphabetically
listed. (The default, if you just press [Enter], is the directory shown
at the ">dir" prompt, and all files *.*.) Below you will see, in addition
to the cursor motions already described, a full complement of operations
to apply to the file the cursor is on:
^L LOAD an additional file to edit;
^N replace the current file with a NEW one;
^R READ a file into the current file;
[Del] DELETE the file (be careful, deletion is immediate).
If the file you want to load/read requires a different file mode, you can
first press "/" and the correct mode letter (D,N, etc).
When the cursor is on a directory, you can press [Del] to REMOVE it
(if empty), or [Enter] to view its contents. (This returns you to the
">dir" prompt, where you can actually specify any new drive/directory.)
You can quit by pressing ^U, or clear the display and return to the
directory prompt by pressing [Esc] or [Space].
FIND/REPLACE (^QF,^QA; ^L,^\) - ^QF is the command to FIND a string. The
search normally proceeds from the cursor position forward, and is case
(upper-lower) sensitive. The character ^_ (Ctrl-underline) functions as a
wildcard: it will match any single character. The single code ^M (CR, or
[Enter]) indicates a "newline" in VDE. Some control codes can be entered
directly; some (like ^M) require the ^P prefix. Graphic characters can be
entered using AltG. Examples:
Find: ^MLABEL matches "LABEL" at start of line only;
Find: p^_^_ce matches "piece", "peice", etc.
^QA is the REPLACE command. It asks for a string to find, as above,
then what to change it to. Normally, the cursor will move to each
occurrence of the string, and you will be asked ("Chg?") whether to change
it; answer "Y"es or "N"o, or "*" to change all the rest without asking
individually, or press [Esc] to quit.
There are several options for find/replace:
"B" = search Backward for the specified string;
"U" = case insensitive search (ignore Upper/lower distinction);
"W" = whole word only (skip instances part of a larger word);
"G" = search Globally (from start or end of file);
"M" = Multi-file search (through all files being edited);
"A" = Align (reform) paragraphs again after each replacement;
"N" = No query: replace all instances without asking.
To skip the options prompt, finish entry of the find string (for ^QF) or
replace string (for ^QA) by typing ^J or ^[Enter] instead of [Enter].
Notes: "A"lign is assumed by default if auto format (^OM) is on. (Be
careful with this in a file with varying margins.) "G"lobal is assumed
whenever "M"ulti-file is selected. "N"o query is assumed whenever ^QA is
used in a macro. [VINST can set "U"pper/lower as your default, in which
case specifying "U" means case sensitive.]
^L instantly repeats the last find or replace (^QF/^QA) operation
once more; the "B,U,W,M,A" options remain as last specified. ^\ also
repeats, but in the reverse direction ("U,W,M,A" remain unchanged).
FOREIGN CHARACTERS - Characters in the upper ASCII range (128-255), such as
the foreign letters and accents, can be entered directly into text using
either standard DOS method: one of the DOS KEYBxx keyboard map utilities,
or the [Alt] key and numeric keypad (hold down [Alt] while pressing keypad
1,5,5 for character 155).
VDE treats these characters as "graphics": you are limited to a total
of 32 such codes at a time, and any that you have used may be found in the
menu brought up by the AltG command. See GRAPHICS.
GRAPHICS (AltG) - You can enter an IBM graphic (or foreign) character into
the file either directly from the keyboard, via [Alt] and the numeric
keypad, or with the AltG command. You will be presented with a menu of up
to 32 characters (labeled A-Z,1-6) to choose from; the default set
contains some useful box drawing parts, and has room free for other
characters that might be loaded. [It can also be modified with VINST.]
In addition, any individual menu entry can be redefined: type "=",
then the code (A-6) to change. (If a graphic definition is present in any
file being edited, you cannot change it.) You can then select the desired
character from the complete graphics set, by moving the cursor to it and
pressing [Enter]. Alternatively, if you press [Esc], you may enter the
extended ASCII code in either hex (2 digits 80-FF) or decimal (3 digits
128-255) format. Example: the Greek alpha can either be picked off the
menu, or entered as "E0" hex or "224" decimal. Once defined, the graphic
can be entered into the file by pressing its menu letter. (Note: on the
HP95LX, the graphics set does not display; enter by numeric value only.)
As a further convenience, you can type "-" to clear all entries not
needed for graphics already present in your files.
Graphics are stored in disk files in accord with the current file
mode. Printing of graphics depends on whether your printer font is
installed [see PRINTER INSTALLATION] as IBM graphics (PC8) or Roman8, or
neither, in which case VDE will "emulate" them, choosing standard ASCII
character overstrikes that come as close as possible. This usually works
well, especially for the foreign language characters.
NOTE: a few "control codes" in the ASCII range 00-1F,7F, if entered
into a file with ^P, will also appear in the graphics table, because of
the way VDE represents them internally.
CAUTION: If you load a file containing many graphics (or binary data
that will be interpreted as graphics), VDE will try to add each in turn to
the table. If the graphics table fills up, any further graphics will be
replaced by spaces. You will see the "Graphics overflow" error message,
and the file will become "untitled", to guard against saving to disk and
corrupting the file. (One common cause of this error is attempting to
read a word prcessr file in the wrong file mode.)
HEADER (^OQ) - The "header" at the top of the screen can be toggled on and
off with ^OQ. [The default can be set either way.] It provides useful
information, but can be removed if you prefer to edit with a screen
showing nothing but your text. It looks like this:
-----------------------------------------------------------------------
+ VDE.DOC /A P 14 L 11 C 48 Ins vt hy AI DS J+ PS " ^K_
or (NP/BZ) (WIn) (AF) (MR)
-----------------------------------------------------------------------
'+' = Multi-file flag. Present if other file(s) are being edited.
'VDE.DOC /A' = Current filename and mode. The full drive and path
information, along with other files being edited, can be displayed
with the ^KI command (see INFORMATION).
'P 14, etc' = Cursor position in file by page (in document modes), line,
column. If pagination is off (^OP0), you will see 'NP' instead of a
page number; in block zoom mode (^KZ) you will see 'BZ'.
'Ins','WIn' = Insert mode (^V) or Word Insert (^]) on.
'vt' = Variable Tab mode (^OV) on.
'hy' = Hyphenation (^OH) enabled. (Documents only)
'AI' = Auto Indent mode (^OA) on.
'AF' = Auto Format mode (^OM) on. (Documents only)
'DS' = Double spacing (^OS) on.
'J+/-' = Right Justification mode (^OJ) on. (Documents only)
'MR' = Margins released (^OX). (Documents only)
'PS' = Proportional spacing (^OK) on.
" = Double quote mark appears during macro recording (Esc").
'^K_' = Command key prefixes (and some prompts) display here.
HYPHENATION (^OH,^P-) - ^OH toggles hyphenation on and off. If off, midword
hyphens are not treated as wordbreaks. [The default can be changed.]
VDE can't hyphenate automatically, but it can recognize hyphens that
you type in the text, treating them as a legitimate place to break a line.
In addition to ordinary hyphens, "-", there are "soft hyphens" (SHs),
which you can enter by typing ^P- (^P,hyphen), and which display in a
different color. SHs indicate optional places to break a long word: they
will print as a hyphen when they fall at the end of the line (that is,
when actually in use to break a word), but do not print if they wind up in
mid-line. (Note: only WordStar (/W or /S) file modes store soft hyphens
as such; when saving to disk in other modes, as in printing, they either
become hyphens or disappear, as appropriate.)
INFORMATION (^KI,AltI) - ^KI displays an Information message telling you:
- The full name (including directory) of the current file;
- When it was last saved, and whether (Y/N) it has been changed since;
- Any print toggles (^B,^D,^S etc) that seem to be unpaired;
- A word count for document files (useful for professional writing);
- The current size of the file in bytes or K (1K = 1024 bytes);
- Bytes of memory used in this text segment, and percentage full;
- The amount (in K) of memory free to edit further files;
- The names of all other files being edited.
AltI displays the VDE version, date, and copyright. (An uninstalled
copy of VDE does this automatically on startup.)
INSERTING (^V,[Ins],^],^_,^N) - ^V or [Ins] toggles Insert mode on/off, and
^] toggles Word Insert. When both are OFF, VDE is in overwrite mode: any
text to the right of the cursor is replaced as you type. With Insert (^V)
ON, any existing text is instead carried to the right. With Word Insert
(^]) ON, you can type over the letters of a word, but anything you add at
the end of the word (when the next character is a space) is inserted
without overwriting; this is a handy feature for revising text. [The
default insert status can be changed.]
The ^_ and ^N commands (insert space, CR) are most useful in
Overwrite mode (avoiding the need to turn Insert on and back off).
JUSTIFICATION (^OJ) - ^OJ controls right justification mode, cycling between
three states:
ADD. ("J+" in header.) Text paragraphs will be
formatted with an even right margin, by inserting extra
spaces between words as necessary.
REMOVE. ("J-" in header.) Formatting will undo
justification by removing any extra spaces between words,
leaving an uneven right margin again.
OFF. Formatting does not change spacing of text;
right margin is left uneven.
Thus the Reform (^B) command can justify or de-justify text as desired.
Right-justified text should not be saved to disk in file mode /U
(which has no margin structure) or in modes /X,/M,/P, or /F (because
XyWrite, MS Word, and WordPerfect will not recognize VDE's method of
justification).
Justification does not work with proportional spacing (^OK).
LINE SPACING (^OS) - ^OS toggles between single and double line spacing. In
double space mode, the following functions generate double carriage
returns: [Enter] (^M), Insert CR (^N), Reform (^B), Wordwrap. You can
easily mix single and double spacing; ^B can convert between the two.
Note: a single-spaced file can also be printed out double-spaced with
the "D" option of the ^KP command (see PRINTING).
MARGINS (^OR,^OL,^OX,^OC,^OF) - ^OR sets the Right margin, and enables text
formatting. At the prompt, enter the column number (up to 255), or just
press [Enter] for the current cursor column. (Note: in proportional mode
(^OK), the number is interpreted in 1/10" instead of characters.)
^OL similarly sets the Left margin column; the value must be less
than the right margin. (^OL is normally used for indenting selected
paragraphs. To leave blank space at the left of the page throughout when
PRINTING, see the "L" option of the ^KP command, or the left margin
setting in PRINTER INSTALLATION.)
"Wordwrap" is automatic in all document modes whenever the margins
are set: anything typed before the left margin will move up to it;
anything typed past the right margin will wrap over to the next line.
(See also REFORMAT and AUTO FORMAT.) Wordwrap and formatting are disabled
if the right margin is set to 1, or while margins are released (^OX).
(NOTES: Margins cannot be set in /N (nondocument) mode; a left margin
cannot be set in /X, /U, or /M mode. On top/bottom margins see PRINTING.)
^OX toggles margin release, allowing you to type outside the margins.
^OC Centers the current line with respect to the margins; ^OF sets
the line Flush right. The cursor advances to the next line.
MATCHING FILES (AltM) - This command can locate small differences between two
largely similar files (perhaps an earlier and a later revision of your
work). You must first load these two files (AltL), then split the screen
between them (AltW), and position the cursor in corresponding places in
both files (for example, the top).
Then press AltM. Starting from these positions, VDE searches for any
difference between the files. If there is one, VDE will stop on those
lines, showing the disagreeing passages side by side. If you want to
continue, press AltM again. (If the difference was significant you may
first need to reposition one cursor to match the other.) If the cursor
winds up at the end of both files, they match.
Note: in document modes, AltM compares word by word, ignoring mere
formatting differences (margins, spacing etc). In /N mode, it is an exact
character by character comparison.
MOVING AROUND (Arrows; ^F,^A,^C,^R; ^QE,X,S,D; ^QR,C; ^QI,^QL,^QN,^QP; AltO) -
VDE supports two sets of Arrow keys, which function interchangeably: the
four arrow keys [^,v,<,>] on the IBM keyboard, and the WordStar "diamond"
^E,^X,^S,^D. These keys move the cursor one unit up, down, right, and
left respectively. There are many other movement commands as well:
^F or ^[>] moves right, to the start of the next word; ^A or ^[<]
moves left, to the start of the current (and then previous) word. ^C or
[PgDn] scrolls forward (down) one screen; ^R or [PgUp] scrolls backward
(up) one screen.
Preceded by ^Q, any arrow key moves more Quickly: thus ^QE, ^QX go
to the top or bottom of the screen; ^QS, ^QD to the left or right end of
the line. Similarly, ^QR and ^QC scroll all the way to the beginning or
end of the file, respectively.
^QI moves directly to a given page (for documents) or line (for non-
documents). In documents, ^QL and ^QN move to the start of the Last or
Next page, respectively.
^QP returns the cursor to its Previous position -- before the last
large movement occurred. (This means AltM,AltO,^B,^QR,^QC,^QF,^QM,^QB,
^QK, and any other command that moves to the block location via ^QB.)
After a block move (^KV), ^QP will return to the previous position of the
block. ^QP can be repeated to cycle between two positions in a file.
AltO displays an Overview bar at the top of the screen. The length
of the bar corresponds to the filesize, and the current position is marked
so you can see where you are. You can move the place marker left or right
with the arrow keys; the cursor remains in the original (current)
position. To move to the selected position, press [Enter]; press [Esc]
instead to cancel.
MULTIPLE FILES (AltL,AltB,AltN,AltX,AltQ,AltC,AltP) - VDE allows you to edit
up to 8 files simultaneously, if you have enough memory. This can be done
from the command line, by giving a list of several filenames.
Otherwise, to Load additional files, press AltL. You can enter any
number of filenames, with optional modes (see SYNTAX); for an untitled
file, press ^J or ^[Enter]. You can also access the file browser with
[Enter] or wildcards (see FILES). (You will get an error message if you
run out of memory, or are already editing the named file, or 8 files.)
Once multiple files are in use, AltB and AltN can be used to cycle
back and forth through the files being edited. If you Quit or Exit
(^KQ,^KX) from one file, you will be returned to the previous one.
For convenience, AltX exits ALL files immediately, saving any changes
made. AltQ quits ALL files immediately, without saving; if any of them
have been modified, you will be prompted (just once) to confirm this.
AltC Cuts a marked block of text, placing it in a buffer for later
recovery. (The original remains, unless you delete it with ^KY.) AltP
Pastes in the previously cut text at the cursor position, allowing block
copying and moving between files.)
It is possible to view two files on screen at once (see WINDOWS).
PAGE PREVIEW (^OD) - This command shows you a preview of the text as it would
print: with all non-printing codes (markers, ^P codes, etc) hidden, and
page breaks indicated by a row of dotted lines. This is handy for making
sure that text is aligned properly, and will help you avoid wasting time
and paper on unacceptable printouts. You can scroll through the file in
this mode with [PgUp,Dn] or ^R,^C; or move to the top or bottom, with
^[Home,End]. Press [Esc] to continue editing.
PAGINATION (^OP,^PL) - The ^OP command sets the page length. Enter a value 0
to 255 lines, or just press [Enter] to restore the default.
When the value is nonzero, it determines the page and line shown in
the document header ("P xx L xx"), and all page functions in the Print
routine (pagination, headers, start/stop at page) are enabled. A formfeed
will be sent to eject each full page. [VDE does not send a formfeed
before printing; install one in your printer initialization if you want.]
When the value is zero, pagination is off. The header will say "NP L
xxxx", showing you the absolute line number in the file; printing occurs
with no page breaks, though a formfeed is sent at the end of the file.
(To skip even this, use the block print option "B", which allows you to
print several small things on the same sheet or, in conjunction with the
"*" option, multiple copies of index cards, labels, etc. See PRINTING.)
The ^PL command embeds a formfeed (^L) in the text, to begin a new
page; the best place to put it is at the beginning of a line.
PARAGRAPH INDENT (^OG) - Of course you can indent text simply by changing the
left margin (^OL), but there are times when you want only a temporary
indent. ^OG gives a "paragraph indent"; each time you use it, the left
margin is reset to the next tab stop over (see TABS). The indentation
lasts until you type the [Enter] at the end of the paragraph (or use the
^B or ^OL commands), at which time the original left margin is restored.
PLACE MARKERS (^KM,^QM) - You can set any number of temporary place markers
in the text with ^KM, when you want to return to a spot later. The marker
displays as a highlighted "!", and can be deleted if no longer needed.
The ^QM command moves the cursor to the next place marker in the file,
cycling back to the top of the file as needed. Place markers are NOT
saved to disk.
PRINT STYLES/CODES (^P) - This command prefix is used to enter various
"codes" in the ASCII range 00-1F into the text, usually for purposes of
printer control. Most codes are entered in a standard fashion: ^PA embeds
^A, etc. Those with defined functions in VDE documents display as
highlighted letters, and always insert; the rest (all, in nondocuments or
/A mode) display as graphics, and observe the current INSERT status.
(Warning: use ^PZ with caution, since many programs treat ^Z (hex 1A) as
an end of file mark.)
Several other common control codes produce special effects:
^P^I - hard (ASCII) tab - printers respond variously to this
^L - formfeed - will cause a page break
^H - backspace - overstrike previous character
^M - carriage return - enter a CR without a LF to overstrike line
(do NOT hit [Enter] again after this, just continue typing)
The further codes below do NOT operate in nondocuments or /A mode.
^P^G causes printing to pause immediately, until you press a key to
continue ([Esc] will cancel). This allows you to adjust the platen for
printing various forms. (Note: on many dot matrix printers, can only be
used at the start of a line.)
^P,Esc or ^P[ can be used to embed the "Escape" code (hex 1B) in a
file if desired. But these are most commonly used for printer control,
and VDE offers a much simpler way of doing this. In place of complex
"escape sequences" for print styles (underlining, etc) in document files
VDE lets you enter a single marker, which will be translated into the
proper codes during printing. VDE supports a set of 13 codes for this
purpose: seven toggles, six switches. [See PRINTER INSTALLATION on how to
install the proper driver for your printer. Otherwise, only ^PS and ^PX
will work.] The conventional WordStar meanings of these codes are:
Toggles: ^P^B boldface Switches: ^P^Q (user def 1)
^D ("doublestrike") ^W (user 2)
^S underline ^E (user 3)
^Y italic ("ribbon") ^R (user 4)
^T superscript ^A alternate pitch
^V subscript ^N standard pitch
^X strikeout [has no installation]
But you can use them for anything you like. "Toggles" are good for
features like underlining that are turned on and off; enter them in pairs,
to mark the beginning and end of the desired text. "Switches" are better
for multi-valued parameters like character pitch or print quality.
If toggles are not properly paired, you will find print effects
continuing throughout the rest of your document. To save time and effort,
use the ^KI command to check for this before printing. (If an "S" appears
under the "^ Check" heading, there is an unpaired ^S somewhere.)
PRINTER DRIVERS (AltV,AltU) - Since many people use more than one kind of
printer, VDE accomodates two different printer drivers, a primary and an
alternate. Before printing a file, you can select which one is active
using AltV. [You can install different drivers with VINST.]
AltU gives you access to an unlimited number of further printer
drivers in the form of .VDP disk files; select "L"oad, then type the file
name. [See PRINTER INSTALLATION for instructions on how to create such
files.] The new driver will replace the previous primary.
PRINTING (^KP) - The ^KP command Prints the file you are editing. The page
format is determined by several factors: the current page length (^OP)
determines the number of lines of text per page. The top and left margins
can be varied with options below. Other options produce either a centered
page number at the bottom of the page, or a header, consisting of a page
number in the corner and/or a string of text; the spacing of these is
controlled by settings in the printer driver. Various printers position
paper differently, but can typically put at least 60 lines of text on a
standard 11-inch page.
You will be asked for a set of "Options:", at which point you may
enter one or more of the following, in any order:
@nn begins printing AT page nn of the document.
=nn RENUMBERS the printout to start at page nn.
#nn prints only (up to) a TOTAL of nn pages.
O,E prints only Odd or Even pages (print one, then run the paper
back through and print the other, for double-sided printing).
F prints FACING pages (header/number reversed on even pages).
*nn prints the entire job out nn TIMES (nn=1...255).
N NUMBERS pages sequentially, at top right.
C numbers pages at bottom CENTER.
"..." uses the quoted string as a HEADER. The string will print at
the top right next to the page number unless it begins with a "<"
character, in which case it prints at the left edge.
Note: you can include the current Filename, Time or Date in the
header simply by entering ^F, ^T, or ^D, respectively. To enter a
quote mark, double it ("").
S SUPPRESSES the header/page number on the first page of output.
Tnn sets a TOP MARGIN skip of nn lines. [The default margins can
Lnn sets a LEFT MARGIN skip of nn columns. be set with VINST.]
B prints only the currently marked BLOCK. Pagination is disabled,
and no final formfeed is sent; you may have to eject the page.
(FILENAME) redirects printer output to a disk file. All print
control codes will go into the file just as they would have been
sent to your printer. If you want to append the output to an
existing file, type a "+" before the name: (+FILENAME).
A ADDRESSES an envelope; see ENVELOPES.
P PAUSES for your keystroke before each page prints (sheet feed).
^ FILTERS control codes (like ^X) so they print out as text "^X".
D DOUBLESPACES the printout.
'...' sends a string of printer control commands before printing
begins. These must be entered as ASCII characters or control
codes, not digits. If the command is "Esc A" (1B 41 hex), press
quote, ^P, Esc, A, quote. To enter a quote mark (27 hex), double
it (''). (As at any prompt, some control codes, including Esc,
must be entered with the ^P prefix. Codes 00-1F are entered as
^A, ^B, etc; you may find an ASCII table helpful -- see PRINTER
INSTALLATION.)
(NOTES: the paging options (@,=,#,O,E,F,N,C,"...",S,T,P) will NOT work if
the page length is set to 0 (^OP), or if 'B'lock print was chosen. 'C'
cannot be used together with 'N'.)
EXAMPLE 1: Options: "<STATUS REPORT: ^D" N F
will put a header like "STATUS REPORT: 10/19/90" at the top left of each
page, and the page number at the top right (vice versa on even pages).
EXAMPLE 2: Options: L12 #1
will print one page only, with an added left margin of 12. (Printing a
single page is a good check of page layout before going ahead to print a
long file. To continue at page two, of course, use Options: @2.)
EXAMPLE 3: Options: BD(+SCRATCH)
will append the print output of the current marked Block, double spaced,
to the disk file SCRATCH.
NOTES: The left margin setting (via "Lnn" or VINST) is in columns,
and its physical width will vary according to the font in use. If you
need a fixed margin, it is better to find your printer's Esc command for a
left margin setting in inches or dot columns, and add this to your printer
initialization string.
If you are in /W or /S file mode, any WordStar dot commands in the
file (lines beginning with ".") will not be printed.
You can cancel printing at any time by pressing [Esc], or pause by
pressing any other key (press a key again to resume).
PROPORTIONAL SPACING (^OK) - Normally VDE assumes a fixed pitch font: one
character equals one print column. Yet if your printer has a proportional
font, you can get VDE to use it, and to format text so that it will print
with more appropriate margins. With ^OK on, your printer will be put in
proportional mode when printing (^KP); and all wordwrap and reformatting
(^B,^OC,^OF) will take advantage of a table of varying character widths,
resulting in a better aligned printout.
In proportional mode, the right margin needs to be interpreted in
inches rather than characters, based on a conversion of 10 cpi, so that a
right margin (^OR) of 70 means 7.0". (Note: characters may well extend
beyond the 70th column.)
[See PRINTER INSTALLATION to install codes for proportional mode on
your printer, and CHARACTER WIDTHS to adjust the width table.]
REFORMAT ([Enter],^B;^OB) - In documents, pressing [Enter] creates a
permanent or "hard" Carriage Return marking the end of a paragraph. (This
is a CR without a preceding space; wordwrap creates a removable "soft CR",
preceded by a space. See TEXT FORMATTING.)
^B reformats the paragraph the cursor is in according to the
current margin settings and line spacing. (Thus ^B is used not only to
reshape a paragraph after editing, but also to change its format in
various ways: see MARGINS, JUSTIFICATION, LINE SPACING.) If the top line
is indented relative to the next one, VDE preserves that as paragraph
indentation. To reformat an entire file use the MACRO command (Esc[) to
repeat ^B. (See also AUTO FORMAT.)
^OB toggles display of hard CRs, which are normally marked by a left-
arrow character in document files, to distinguish them from soft ones. If
you find this distracting, it can be turned off.
RULER LINE (^OT) - To help you align text properly, ^OT displays a "ruler
line" above the text. Type ^OT again to remove it. A moving pointer
indicates the current column.
In each column you will see one of several symbols: the arrow "v" is
the cursor column; "L,R" designate the current margins; "." indicates
areas outside the current margins, "-" within them. Also, tab stops are
marked by either "!" (Variable) or ":" (Hard). Examples:
(/D mode) L-----!---!----------v--!--------------R........
(/N mode) :.......:.......:....v..:.......:.......:.......
RUN COMMAND/SHELL (AltR) - AltR lets you run DOS commands without leaving
VDE. An imitation DOS prompt is produced (e.g., "C:\WORK>"); you can copy
or rename files, or run any other program you like, and afterwards VDE
will prompt you to "Press [Esc]", which will return you to your undis-
turbed VDE editing session.
In addition, you may simply hit [Enter], which lets you out into what
is known as a Command Shell: you are actually back IN DOS, and can use any
number of commands or move around as you like; when through, you need to
type the DOS command EXIT to return to VDE.
Caution: don't load new memory-resident utilities from within the
AltR command; this fouls up the DOS memory allocation.
To use AltR, you must have enough free memory to load and run the
chosen program; and VDE must be able to find COMMAND.COM in order to
execute it, via the COMSPEC environment variable. Be sure either that
your AUTOEXEC.BAT file includes a line like
SET COMSPEC=C:\COMMAND.COM
or that your CONFIG.SYS file includes a line like
SHELL=C:\COMMAND.COM C:\ /P
(In either case replace "C:\" with the appropriate directory.)
SAVE/EXIT (^KE,^KS,^KX,^KD,^KQ) - ^KE renames your work, allowing you to
change to a new filename (and/or new directory or file mode) before
saving. If you enter a new directory or file mode alone, that change will
be made, while the filename remains the same. (Note: If you want to make
your work "untitled", press ^J or ^[Enter], instead of [Enter], at the
rename prompt.)
^KS saves your work so far, writing the file to disk under the
filename in the header. (If it's "untitled", a new name will be
requested.) If the file has not been modified, you will be prompted to
confirm that you meant to save it again anyway.
For safety, when you save changes to an existing file,
a copy of the previous version is preserved as a BACKUP
FILE (with the same name, but extension ".BAK"). If you
decide to abandon your latest changes, you can recover the
old version from the BAK file. [You can choose not to
maintain BAK files, if you prefer; see VINST, OPTIONS.]
There are several different commands for finishing up:
^KX saves your work (if modified), and then EXITS to DOS.
^KD saves your work, then loads a new file to edit.
^KQ just QUITS, without saving to disk. If the file has been
modified, you will be prompted to confirm that you meant to do this!
SCREEN CONTROLS (^W,^Z; Esc[^,v,<,>]; ^OE,^OZ) - VDE provides a number of
commands to control the display screen:
^W and ^Z scroll the screen up and down a line at a time, without
moving the cursor in the text (unless necessary).
Preceded by [Esc], any arrow key also causes the screen to scroll:
up/down by 1/4 screen, or right/left 32 columns. Again, the cursor is not
moved unless necessary. (The screen cannot shift rightward past the end
of the current line.)
^OE makes the current line the top of the screen.
^OZ temporarily blanks the entire screen; good for avoiding CRT burn-
in, or just protecting work from prying eyes or fingers. Restore the
screen by pressing [Esc]. This is also useful if some other software
(like a memory-resident utility) has messed up the screen: type ^OZ,Esc
and VDE will completely restore it.
SCREEN SIZE (AltA,AltE) - On IBM compatible systems, VDE automatically adapts
to any size text screen currently in use (minimum: 40 columns, 8 lines).
This means that (1) VDE will run on laptop/palmtop computers with small
displays, and (2) visually impaired users can use the DOS command MODE
CO40 to edit with a 40 column large-type screen. When running with fewer
than 80 columns, VDE omits toggle indicators from the header; also, some
menus remain in 80-column format, and can be scrolled horizontally by
pressing the right and left arrow keys while they are on screen.
On IBM EGA/VGA video systems, you can use your own software (like the
popular UltraVision program, or any utilities that may have come with your
video adapter card) to change the font or screen size (lines,columns)
before running VDE, or even while editing (via the AltR command). VDE
also offers two internal commands to vary screen size:
AltA changes the screen width, toggling between normal (80-column)
mode and wide (132-column) mode. It can be used alone, or in combination
with AltE. This command works ONLY with certain brands of video cards
which offer 132 column displays [see INSTALLATION to specify yours], or if
you are running UltraVision with a card that supports its 132 column mode.
AltE changes the screen length (font size), varying the number of
text lines displayed. In its most basic form it simply toggles between
normal 25-line mode and a compressed mode of 43 (EGA) or 50 (VGA) lines.
But when possible (with VDEOPT.DAT present or under UltraVision), it
displays a prompt offering a wider range of sizes:
with VDEOPT.DAT VGA - 20,25,28,33,40,50,57 lines
EGA - 17,25,29,35,43,50 lines
with UltraVision VGA - 25,36,50,60/63 lines
EGA - 25,34,43,60 lines
You can enter a letter code A-G, or [Enter] for your default value [which
can be changed with VINST]. Larger text is easy on the eyes; smaller text
can pack a whole page of text into one screen. To make this range of
sizes available (without UltraVision), the VDEOPT.DAT file must be in the
current or VDE directory (set with the SET command -- see DIRECTORIES).
NOTE: Under DESQview, you must use its own "Rearrange:Video" menu
selection to change text sizes; VDE's commands will not work.
SPLITTING FILES (AltS) - If you encounter a text file that is too large for
VDE to load and edit, you can divide it into manageable chunks with the
Split command. You will be prompted for the name of the file to split;
VDE will divide it in pieces whose names have a number added at the end of
the file name. Example: BIG.DOC will split into BIG1.DOC, BIG2.DOC, etc,
each of which you can edit separately. After 9, the numbers continue with
letters A..Z. (The original file also remains on disk.)
If necessary, the files can later be reassembled into one with the
DOS COPY command, for example: COPY BIG1.DOC+BIG2.DOC BIG.DOC.
TABS ([Tab],Shft[Tab]; ^OV,^OI,^ON; ^PI,Esc[Tab]) - There are two Tab modes,
Variable and Hard; ^OV toggles between them. In Hard Tab mode the Tab key
produces an actual ^I (ASCII TAB) character. Hard Tabs display at fixed
intervals [normally 8 columns; optionally 4 or 16].
In Variable Tab mode (the default for documents), the Tab key moves
to the next tab stop set. The cursor moves over any existing text; spaces
are added at the end of a line if needed.
Up to eight tab stops may be set with ^OI, or cleared with ^ON; the
defaults are in columns 6, 15, 35, and 55. [These can be changed.] Both
commands prompt for a list of column numbers, or you can press [Enter] for
the cursor column. The Set command ^OI also accepts two options, both of
which replace all previous tab settings:
@nn Set tabs every "nn" columns
#n1,n2,... Set tabs to columns "n1,n2,..."
You can simply clear all variable tabs by typing ^ON followed by "*".
The Shft[Tab] command tabs backwards (left to the previous stop),
useful for moving around in tables, etc.
You can always get a Hard Tab with ^PI, or a Variable Tab with
Esc[Tab], no matter which tab mode you are in.
TIME/DATE (AltT,AltD) - VDE can read the DOS system clock and insert the
current time and date in your file automatically. Just press AltT for the
Time, or AltD for the Date. The string will appear at the current cursor
location, as though you had typed it in yourself: for example,
1:21 PM [or 13:21 -- VINST selects the format]
January 15, 1988 [or 1/15/88, 15 January 1988, 15.1.88]
UNDELETING (^U) - The undelete function can be used to recover accidentally
deleted text or overstruck characters. The lost text will be replaced at
the current cursor location. ^U may be used repeatedly to undo a sequence
of deletions, recovering each character, word, or line in order. (Once
all deleted text is restored, ^U does nothing.)
Exception: block deletions cannot be recovered sequentially, they
must be undeleted immediately (before any other deletion occurs).
Undeletion can also be used as a sort of quick-and-dirty block move.
For example, if the cursor is at the start of a word, the commands ^T^F^U
(which of course can be assigned to a macro key) will swap that word with
the one following it. Similarly, ^Y^X^U will swap two lines.
UPPER/LOWER CASE (^^; ^K",^K',^K^) - ^^ (Ctrl-caret or 6) reverses the case
of the character at the cursor, if it was a letter, and moves to the next.
The ^K^ (^K-caret) command reverses all text in a marked block (see
BLOCK COMMANDS); ^K" makes all text in the block uppercase, ^K' lowercase.
WINDOWS (^OW; AltW,AltF; ^[PgUp,PgDn]) - VDE can split the screen into two
windows, showing either two parts of the same file or two different files.
In either case, AltF moves the cursor back and forth between the two
windows. ^[PgUp] and ^[PgDn] scroll BOTH windows in synchronization.
^OW is used in a SINGLE file; it creates a window in the bottom half
of the screen, duplicating the current file text. You can move to a
different place in the file within this window, and continue editing, with
the original text still in view in the top window. (Note: any
modifications made to the file will not be reflected in the inactive
window until you return to it.) Type ^OW again to undo windowing.
AltW splits the screen Window between two DIFFERENT files being
edited, showing you both at once. Type AltW again to undo.
If you call up a command menu (like ^J or ^KP) that will not fit in
one window on a small screen, windowing will be turned off to display it.
================================ 7. MACROS =================================
AUTOEXEC MACRO (Esc0) - Any macro you assign to the '0' key will execute
automatically whenever you first enter VDE. This feature can be used for
a variety of purposes, including changing defaults not available through
VINST options. See also MACRO KEYS.
Notes: if you load multiple files, remember that for settings which
are specific to each file (like margins), only the first file will be
affected. You cannot use a utility like KEYSTACK that stuffs input into
the DOS keyboard buffer before running VDE, if an autoexec macro exists.
FUNCTION KEYS ([F1]...[F12]) - Up to 48 macros can be assigned to function
keys; they can then be recalled and used with one keystroke. Each IBM
function key can be used alone or with Shift, Ctrl, or Alt, to produce:
[F1]...[F10] = F01...F10 in VDE notation
Shift-[F1]...[F10] = F11...F20
Ctrl-[F1]...[F10] = F21...F30
Alt-[F1]...[F10] = F31...F40
And, if you have an Enhanced (101-key) AT keyboard, also:
[F11],[F12] = F41,F42 Ctrl-[F11],[F12] = F45,F46
Shift-[F11],[F12] = F43,F44 Alt-[F11],[F12] = F47,F48
VDE comes with [F1] set as a "Help" key (^J), but this can be changed.
Otherwise, function keys are defined (with the Esc[ or Esc] command,
or with VINST) and used exactly like macro keys. See MACRO KEYS.
KEY DEFINITION FILES (AltU) - These files save sets of macro key or function
key definitions, and should be given file types of ".VDK" and ".VDF",
respectively. You can load any key file, along with your text file(s) to
edit, from the command line (see SYNTAX).
AltU can be used while editing: it will ask whether you want to
"L"oad or "S"ave such a file, then prompt for the name of the file. The
filetype MUST be ".VDK" or ".VDF", and will determine whether MACRO or
FUNCTION keys are affected. If you load such a file, those definitions
will replace any previous ones. If you save, the current definitions will
be written to the file. [Key files can also be created or installed as
defaults in your copy of VDE, using VINST.]
MACRO DEFINITION AND USE (Esc[,Esc]) - To DEFINE a macro, type Esc[. You
will be asked for the macro definition; then, whether to Use or Store it.
(On storing, see MACRO and FUNCTION KEYS.) You may want to plan the macro
first with pen and paper. Many special IBM PC keys cannot be entered in a
macro; you must use the WordStar equivalent (like ^R instead of [PgUp]).
Then you need to decide whether you want the macro to repeat (and if
so how many times), and whether you want to watch it happen or not.
VDE asks "Make Quiet, No-repeat, Both?" Reply "Q" for
Quiet (fast) operation, or press [Enter] for visible (slower)
execution. (The "N" option is intended for storing keys,
but can also be typed here to skip the next question.)
VDE asks "Repeat count?" Type the number of times to
execute (0-254), or just [Enter] for 1; or "*" to repeat
indefinitely.
Normally, you can see the results as the macro executes, and you can
cancel it at any time by pressing [Esc]. If you choose to speed up macro
execution by specifying "Q"uiet mode, only the header will be updated as
the macro runs. (Don't do this if the macro concludes by requesting user
input -- the necessary prompts would not display!)
Macros will stop automatically if an error condition occurs, in which
case the error message will display briefly; or if the cursor attempts to
move past the top or end of the file, in which case no error displays.
(Exception: Esc$ can change error handling. See MACRO PROGRAMMING.)
Thus some macros will halt on their own when they reach the end of a file;
others will have to be terminated manually, by pressing [Esc].
Once defined, a macro can be re-used with the Esc] command, which
again gives you the options to Use or Store the previously defined macro.
[To add a macro key permanently to VDE.COM, use VINST: either enter it
again in VINST, or write it to a file and read that into VINST -- see DATA
FILES.]
EXAMPLES: Note -- for clarity, macro examples will be given here as
they function, not as they are typed in; remember that you will need to
add ^P prefixes for certain control keys ([BkSp] (^H), [Enter] (^M), ^J,
^Y, ^U, ^P). Keystrokes are often separated by spaces for clarity; the
"_" symbol is used to represent an actual space character typed.
1. Reformat an entire file: after Esc[, just enter
^B
Specify Quiet and indefinite repeat as options ("Q,*").
2. View a file by scrolling slowly through it:
Esc; ^Z (or ^C)
This pauses, then scrolls down. (Again, repeat with "*".)
3. Macros are quite powerful. Can you figure out what
this one does, if entered with indefinite repeat "*"?
^QR ^QF(^J ^G ^KB ^QF)^J ^G ^KK ^QC [Enter] ^KV
(It takes all phrases in parentheses out of a file, making
a list of them at the end of the file.)
TECHNICAL NOTE: Ordinarily macros are completely self-contained, and
NEVER request input from the keyboard while executing. There is one
exception: using AltR to run a program from a macro is tricky. Input
while in the program or shell must be typed by you. (VDE resumes control
only when the program ends; if the macro continues, its next keystroke
must be the [Esc] to return to editing.)
MACRO KEYS (Esc0...Z) - Both the Esc[ and Esc] commands also give the option
of Storing the macro definition to a key. Up to 36 of these can be stored
on keys 0...9,A...Z; they can then be called up with two key-strokes. (48
more can be stored on IBM function keys; see FUNCTION KEYS.) Example: if
stored to key 3, a macro can be reused simply by typing Esc3.
VDE asks "Make Quiet, No-repeat, Both?" Reply "Q" for a
key that executes in Quiet (fast) mode; "N" for a key that
runs once, without asking for a repeat count; or "B" for
both of these. Press [Enter] instead for a key that executes
just like the "use macro" option, visibly, asking for a
repeat count first.
VDE asks "Store to key?" Press the desired key: a
number 0...9 or letter A...Z for a Macro key (Esc0...Z), or
a Function key like [F3], Alt[F9], etc.
Again, don't choose "Q"uiet for a key that will request input from you.
There is a total of about 974 bytes available for all 36 keys, and a
128 byte limit for any one key. (VDE's own input line is of limited
width, but VINST can handle up to the full 128.) Trying to use an
undefined key results in an error. You can delete a key definition by
entering an empty macro string (Esc[, [Enter]) and storing it to the key.
Keys defined with Esc[ or ] last only during the current editing
session (VDE.COM itself is not modified). [VINST lets you install
definitions permanently; see DEFAULT MACRO KEYS.]
EXAMPLES: Keys are useful for storing a frequently repeated phrase;
"EscW" is much more convenient than "World Wide Widgets Ltd. (N.A.)". You
might also use several for sets of margins, like: ^OL 5 [Enter] ^OR 60
[Enter]. A key defined as ^QR ^N AltD ^OF would place the current date at
the top right of a letter. Many VDE users set up a macro key to produce a
personalized letterhead: for example, the macro
^N John Doe ^OC ^N 123 Main St ^OC ^N City, State ^OC
will insert that three-line address, neatly centered. You can add print
effects (bold, italic) to suit your taste. For a solid line separating
this from the body of the letter, try adding
^N ^PS ^OF ^E ^V ^PS ^V ^X
Macro keys can be used to create powerful new commands, for example:
^D ^A ^KB ^F ^KK will mark the current word as a block. And, similarly,
^QS ^KB ^X ^KK will mark the current line as a block.
Macro keys can also effectively change the way VDE commands behave.
For example, the Cut (AltC) command does not remove the cut text from the
file; but if you wish it did, you can set up a command that does: just
define EscC as a macro key consisting of AltC, ^KY.
MACRO PROGRAMMING (^F Esc; Esc0..Z Esc! Esc=,~,<,> Esc$ Esc() Esc+,- Esc&) -
VDE has several commands that operate only within a macro definition, and
give you conditional control over the execution of a macro, allowing real
programming.
^F, entered as part of an input string, will be replaced by the
current filename when the macro executes. This can be useful to refer to
the current file when running compilers and file utilities. Thus, if you
define the macro
AltR compile ^PF /g /r1 [Enter] Esc,
the ^F embedded in the string will be expanded, so that the DOS command
executed by AltR will actually be something like
compile C:\PGM\MYPROG.C /g /r1.
Esc; (Esc-semicolon) gives a brief pause before macro execution
continues, presumably so the user can see what's happening on screen. Use
two or more to get a longer pause.
Esc0...Z, when placed IN a macro, function simply as local "labels"
0...Z. They have no effect, but can be "jumped" to by other commands.
Esc! followed by 0...Z is a "jump" instruction, causing macro
execution to resume with the command following that label. Example: Esc!2
jumps to label 2. As two special cases, Esc![ jumps to the beginning of
the macro, and Esc!] jumps to the end (exits).
Esc= and Esc~ perform tests on the character at the current cursor
position. There are two ways to use them:
(1) Followed by a character, then a label 0...Z (or
"[","]" for start or end), they are conditional jumps: they
jump IF the character does (or for "~", does NOT) match the
one specified. Example: Esc~^M2 jumps to label 2 if the
current character is NOT a CR.
(2) Followed by a character, then ">" or "<", they are
search loops. They will continue to move the cursor right
(or for "<", left) as long as the character at the cursor
does (or for "~", doesn't) match, or until the beginning or
end of the file. Example: Esc=_> moves right as long as the
current character is a space (so it stops on a NONspace).
Similarly, Esc< and Esc> test the cursor character's ASCII value and
act accordingly: thus Esc<A2 jumps to label 2 if the character is less
than ASCII "A" (41 hex), etc.
If you program an endless loop, you will at some point have to halt
execution of the macro by pressing Esc.
Normally, a macro halts when an error occurs. With Esc$ you can
instead specify a label where execution should continue. Thus, after the
command Esc$E, any command resulting in an error (like "not found") will
cause a jump to label E, ignoring the error.
Several commands allow the use of a counter variable. Esc() sets the
value: for example, Esc(0) initializes it to zero. The Esc+ command
simply increments the value; Esc-(minus) decrements the value, then jumps
if it is zero to a specified label. (In addition to a number, you may use
"[" or "]" for the start or end, or "@" to avoid jumping entirely.)
Example: Esc-] decrements the counter, jumping to the end (exiting) if it
reaches zero; Esc-@ simply decrements it.
Esc&, followed by 0...Z, is used to "chain" to another macro key. In
this way you can build up strings longer than the 128-byte limit on any
one key. This is a "jump", not a "call"; there is no returning. Example:
Esc&M causes key M to execute. (You cannot chain to function keys.)
The examples below will give some idea of how these commands can be
used to construct your own new VDE commands. They will work faster if
you store them as Quiet keys, but in general, don't make macro programs
Quiet until you're sure they work.
EXAMPLES: 1. Here is a good macro program (best stored as a Quiet
key) to move the cursor to the start of the current sentence:
Esc~.1 ^S Esc1 Esc~.< ^D Esc=_2 Esc=^M2 ^S^S Esc!1 Esc2 ^D Esc=_2 Esc=^M2
You could explain this in programmer's pseudo-code as:
If not "." goto label1 ;move left if already on period
Move left
label1: While not "." move left ;move left to previous period
Move right ;move right to following character
If " " or ^M goto label2
Move left twice ;skip over a period if it's not
Goto label1 ; followed by a space or return
label2: Move right ;okay, now move right as long
If " " or ^M goto label2 ; as you see a space or return
(all done)
2. This macro moves to the start of the current paragraph:
^QS ^S^S Esc=_[ ^D^D
3. If you have some text that you can't reformat because every line
ends in HARD CRs, here is a macro that will "soften up" one paragraph's
worth, leaving just one HARD CR at the end:
^QS ^X Esc=_] Esc=^M] ^S_^D Esc![
4. This macro moves to the center of the current line; note how the
counter variable is used to figure the line length, then move back only
halfway: ^QS Esc(0) Esc1 Esc+ ^D Esc~^M1 Esc2 Esc-] Esc-] ^S Esc!2
5. Many programming languages use nested sets of parentheses, for
example "{}" in C. This macro, when the cursor is placed on an open
bracket "{", will move ahead to find the closed bracket "}" that matches
it: Esc~{] Esc(0) Esc1 Esc~{2 Esc+ Esc!3 Esc2 Esc~}3 Esc-] Esc3 ^D Esc!1
TOGGLE CONTROL (Esc*) - "Toggle" commands can create difficulties when used
in macro and function keys: ^V, for example, toggles insert mode. But
when you plan a macro key, you don't necessarily know how Insert will be
set when the key is used! So if you use ^V in the macro, you don't know
whether you just turned it off or on; you might be overstriking or
inserting, and can't tell.
The Esc* command provides a solution, by letting a macro specify an
exact state for each toggle. Esc* must be followed by a LETTER to
identify a toggle, UPPERcase to turn it ON or LOWERcase to turn it OFF.
(Insert and Justify each have a third state, as well.) For example, Esc*i
will set INSERT OFF, regardless of its previous state. The toggles are:
Autoindent (^OA) 'a'=off 'A'=on
Doublespace (^OS) 'd'=off 'D'=on
auto Format (^OM) 'f'=off 'F'=on
Hyphenation (^OH) 'h'=off 'H'=on
Insert (^V) 'i'=off 'I'=on 'W'=word
Justification (^OJ) 'j'=off 'J'=on 'R'=remove
Proportional (^OK) 'p'=off 'P'=on
Varitab (^OV) 'v'=off 'V'=on
margin release (^OX) 'x'=off 'X'=on
Once you've used one of these you can revert to the usual commands (like
^V), if you prefer, because you WILL now know the toggle setting.
NOTE: Previous versions of VDE handled this problem
for Insert mode (alone) by turning insert OFF automatically
before running any macro. This is no longer the case.
RECORDING MACROS (Esc") - As an alternative to composing macros and using the
Esc[ command to type them in, you can simply record a macro as you go
about a task. Press Esc" to activate recording; type away; then press
Esc" again to conclude. You will then be asked whether to use or store
it, etc (see MACROS). No confusing ^P prefixes are needed, and you can
take advantage of the full 128-key macro length. While recording, a quote
mark (") will be visible in the upper right (prefix) area of the header,
if the header is displayed.
Note: Function and macro key commands themselves will not work while
macro recording is in progress.
===================== 8. REVIEWS / ABOUT THE AUTHOR ========================
A sampling of recent comments about VDE:
"VDE is a word-processing program for people who like their
programs lean, mean and simple... executes all the standard
operations necessary for writing articles, books or screenplays...
blazingly fast... Even the loading and storing of files is speedy."
- Paul Ciotti, Los Angeles Times Magazine (18 March 1990)
"This may be the finest piece of word processing code ever
written. I have never been as impressed with anything as I have with
VDE 1.5... writing software in 100 percent assembly language still
pays off in performance and reduced code size. It's an astonishing
product, believe me. It's more than the perfect laptop word
processor. Actually, it's something that corporations should
consider if they want to save tens of thousands of dollars... I
cannot give a higher recommendation for any product that I have seen
in ten years than I can for VDE 1.5. Top recommendation."
- John Dvorak, PC Magazine (24 April 1990)
"What fascinated Dvorak was not just the astonishing functionality
achieved with very little programming code, but also the attitude --
and implications -- of the author who circulated it freely asking
only for a modest sum for site licenses... VDE is an amazing word-
processor, offering almost everything except the layout and document
processing features found in far fatter programs... it supports the
old WordStar command set... ergonomically the most efficient I've
ever learned."
- Colin Brace, Language Technology/Electric Word (July/Aug 1990)
"I've used various versions of WordStar, WordPerfect, and Wang
IWP. I wouldn't trade my copy of VDE for shrink-wrapped sets of the
latest versions of all of these. I congratulate you both on the
quality of your program and on your policy in making it available to
people." - K.N., registered VDE user (August 1991)
As of Spring 1992, VDE can be found in "Dvorak's Top 30", a boxed
collection of shareware applications published by Interplay Productions,
available in retail stores. It is also included on-disk with the book
"Dvorak's Inside Track to DOS and PC Performance" by John Dvorak and Nick
Anis, published by Osborne/McGraw-Hill.
ABOUT THE AUTHOR
Eric Meyer holds an A.B. in physics and a Ph.D. in history and philosophy
of science, and has taught at the Universities of Indiana, Oklahoma, and
Colorado. A longtime advocate of microcomputers, he has done programming in
HP-41, Z80 assembler, BASIC, FORTRAN, LISP, C, and APL; lately he has been
writing utilities in 8086 assembler for the IBM PC. In a period of escalating
software complexity and retail prices, he still believes it is important that
useful, inexpensive software remain available to computer users worldwide.
================================[end VDE.REF]=================================