Sie sind auf Seite 1von 46

Zedit (tm) Version 3.0 Copyright (C) 1990-1994 Executive Systems, Inc.

All Rights Reserved Worldwide by Jeffrey C Johnson This file contains the following sections: Installing the Zedit Text Editor Starting Zedit Command Line Options Gang Edit Mode Starting Zedit from XTreeGold or XTreeNet The Zedit Screen Using a Mouse File Menu Commands Block Menu Commands Edit Menu Commands Goodies Menu Commands Options Menu Commands Print Menu Commands Search Menu Commands Tab Menu Commands Window Menu Commands Control Key Commands CTRL+K Commands CTRL+KJ "Mark" Command CTRL+O Commands CTRL+Q Commands Additional Keystroke Commands How Backup Files are Generated End of Line and End of File Characters Inserting Control Codes and Graphics into a File The Color Editor Zedit Files DOS 5, Z.EXE, ZX.EXE and Memory Usage EMS and Running Other Programs from within Zedit

----------------------------------------------------------------Installing the Zedit Text Editor ----------------------------------------------------------------Zedit is automatically installed in your XTGOLD or XTNET directory when you install XTreeGold or XTreeNet. To change the directory in which Zedit is installed: o o Copy all Zedit files to any directory. Make sure that Z.EXE (or ZX.EXE) is accessible via a batch file or the PATH= DOS environment variable.

See the section, "Zedit Files" for more information. ----------------------------------------------------------------Starting Zedit ----------------------------------------------------------------Zedit can be started from the DOS command line. The syntax for starting Zedit is: Z [options] [filename(s)] Command line options and filename syntax are described in the next section.

----------------------------------------------------------------Command Line Options ----------------------------------------------------------------The command line options are: /m Forces monochrome attributes to be used for menus, the status line and dialog boxes, and a single 'monochrome' palette for the file windows. Configured color information is ignored when /w is specified. /p Prints one file and exits to the DOS prompt. /w Same as the /m switch except a separate set of colors is used for the file windows. TIP: Use /w (and the associated color settings) when using Zedit in a DOS window running under Windows. This lets you customize one color set and use it for all open files and is convenient when the installed Windows Video Grabber Device Driver uses non-standard colors in a DOS box. You'll know if you need to use this switch if Zedit text becomes unreadable. OPENING MULTIPLE WINDOWS These additional command line options control how multiple windows are opened when you start Zedit and load multiple files. /c Opens cascading windows. /h Splits windows horizontally. /o Opens windows in an ordered stack. /t Opens tiled windows. /v Splits windows vertically. LOADING FILES FROM THE COMMAND LINE Syntax: Z [filename] [[filename] ... [filename]] Loads files specified on the command line. Syntax: Z + Loads the files from the previous editing session. The current list of open files is automatically saved in the config directory as "ZLIST.HST" when you exit. Syntax: Z +filename Opens each file listed in the specified text file in a window when the editing session begins. This option assumes "filename" contains a list of files to load into multiple windows. You can use XTreeGold to generate this list or create it manually. You can also copy or rename the ZLIST.HST file that is written when you exit the editor.

Files loaded in this mode must all fit in memory at one time. Syntax: Z -filename Opens each file listed in the specified text file in Gang Edit mode when the editing session begins. This option assumes "filename" contains a list of files for Gang Edit mode. You can use XTreeGold to generate this list or create it manually. You can also copy or rename the ZLIST.HST file that is written when you exit the editor. The maximum number of files that can be included in a Gang Edit are determined by the sum of the memory needed to handle the file-list file and the largest file in the list. Lines beginning with ';' ' ' '/' are ignored in the file-list file. ASSIGNING TAB SETTINGS TO FILE EXTENSIONS The ZTABS.INI file specifies how tabs are automatically set when a file is loaded into the editor. ZTABS.INI can be edited with Zedit, and contains instructions on setting the default tabs.

----------------------------------------------------------------Gang Edit Mode ----------------------------------------------------------------When the command line syntax takes the form of "Z -filename" Zedit reads "filename" into memory, parses it, and then uses the parsed file as a list of files to edit. This feature lets you edit hundreds of files at one time (Zedit needs enough RAM to hold the file-list file and the largest file in the list). Files are brought into the "Gang Edit window" (which is initially window 1) one at a time for editing. Two actions cause the editor to automatically advance to the next file: o o Pressing CTRL+KN, CTRL+KG Searching for text with the Search, Multiple files option checked. When a new file is brought into memory, the file in the active Gang Edit window is automatically saved if it has been modified. on and off with status line Edit is turned searches

When a Gang Edit is active, it can be toggled the Options_Gang on/off selection (the second changes to reflect the change). When the Gang off, the Search_Multiple files selection only through the open windows.

Pressing CTRL+KI keeps the current Gang Edit file in RAM, and opens the next Gang Edit file in the next available window. In a Zedit file-list file all lines must contain a valid DOS filename, path\filename, or d:\path\filename. Lines that meet any of the following criteria are ignored: o o o o blank lines lines lines lines that start with spaces or tabs that start with a semicolon ";" that start with a slash "/"

------------------------------------------------------------Starting Zedit from XTreeGold or XTreeNet ------------------------------------------------------------To use Zedit instead of 1Word, you'll need to run the configuration program and specify it as the default text editor. In the XTree configuration program, choose Modify Configuration Items. Then change the "Editor program" to C:\XTGOLD\Z.EXE. Once you've changed this, you can use the Edit command to run Zedit automatically. If you frequently run out of memory when running Zedit from XTree, set the memory configuration option for the editor to use "ALL MEMORY". You can then use the Edit file command to use Zedit from XTreeGold or XTreeNet. ----------------------------------------------------------------The Zedit Screen ----------------------------------------------------------------In the Zedit screen, two on-screen status lines maintain statistics and current editing information. The first line under the menu bar shows the current cursor position, by line, column and byte. The toggle options checked on the Search menu are shown in upper case; those not checked are shown in lower case. Once the current file has been edited, "Modified" is displayed on this line. The second status line shows the Gang Edit status if it is in effect, and the stop watch time if a ms stop watch has been turned on. When window frames are selected, the window number and file name are shown in the top of the window, on the window frame. When a file has been modified, the upper left corner of its window frame is displayed as a tiny square character instead of a box corner. NOTE: The maximum number of open file windows is 80.

----------------------------------------------------------------Using a Mouse ----------------------------------------------------------------[1] <-- window frame window text WINDOW FRAMES BOTH BUTTONS Clicking either button over the maximize/minimize arrow at the upper right corner of a window toggles the window between its maximum size and the size you have manually set. Note that a copy of the min/max control for the active window is located in the upper right corner of the screen for convenience. Clicking either button over the window id number in its upper left corner closes that window. If the file in the window has been modified, you are prompted before the modified file is discarded. LEFT BUTTON Dragging any of the four corners resizes the window. The position of the text cursor is adjusted to keep the text at the cursor position visible within the window. Dragging anywhere else on the window frame moves the window. RIGHT BUTTON The right button drags and sizes the window without activating the window. Use it to bring a window into view or hide it under another window. WINDOW TEXT BOTH BUTTONS Clicking either button over the text of an inactive window activates that window (brings it to the top). LEFT BUTTON Clicking the LEFT button over text in the active window moves the cursor (insertion point) to the mouse location. Double-clicking the LEFT button over text in the active window marks the expression at the cursor location (same as CTRL+KJ). Double-clicking the LEFT button over text in the active window while holding down the CTRL key (1) marks the

expression at the cursor location (2) moves the cursor to the end of the block (3) searches for the next occurrence of the marked expression, and (4) unmarks the block. (same as CTRL+KJ, CTRL+QK, CTRL+QJ, CTRL+KH). Dragging the LEFT button over text in the active window marks the text as the cursor moves. If the mouse is dragged above or below the window the text scrolls up or down. RIGHT BUTTON Clicking the RIGHT button over text in the active window scrolls the text up (when clicking in the upper half of the window) and down (when clicking in the lower half of the window). If you click in the left four columns of the window the text scrolls one page at a time. Holding down the RIGHT button initiates a continuous scroll. Dragging the RIGHT button causes a scroll every time the mouse cursor moves.

----------------------------------------------------------------File Menu Commands ----------------------------------------------------------------Open file and window... Opens a file in a new window. Read file into window... Inserts the file into the current window. Save Saves the current file, whether or not it has been modified. Save As... Saves the file with a new file name which you specify. Save changed, eDit another... Saves the current file and opens another one in the same window. Save changes, eXit to DOS Saves all modified files and exits Zedit. Unlike File_Exit to DOS, this command automatically saves all modified files without prompting. Save modified Files Saves all modified files; you are prompted at each file. Abandon file, edit another... Abandons the current file and opens another in the current window. Abandon file, close window... Abandons the current file and closes the current window. If the current window is the only open window, it also exits Zedit. Abandon all, exit to DOS... Abandons all modified files and exits to DOS. Zedit asks for confirmation. About Zedit... Displays the program version number and copyright notice. DOS Commands... Executes a DOS command. If you have 600K free EMS, Zedit will use it to save the RAM it uses while the DOS command is

executing. Otherwise a disk file is used. Exit to DOS... Ends the Zedit session. If you press ESC at the "Save file as" prompt, the file is NOT saved, and Zedit does NOT exit to DOS; you are returned to Zedit and the canceled file becomes the active window.

----------------------------------------------------------------Block Menu Commands ----------------------------------------------------------------Copy block Copies the marked block to the current cursor location. Delete block Deletes the marked block. Move block Moves the marked block to the current cursor location. Read block from file Reads a file into the current window at the current cursor position. Write block to file Writes the marked block to another file. Indent block Indents the block; intended for structured programming languages. Outdent block Removes block indenting. Mark by moving cursor Lets you start and stop marking text as you move the cursor around. Mark block start Marks the beginning of a text block. Mark block end Marks the end of a text block. Mark line Marks the line at the cursor position. Mark word - expression Marks a block of text. See the section "CTRL+KJ Mark Command." Unmark Removes the block markers from the text.

----------------------------------------------------------------Edit Menu Commands ----------------------------------------------------------------Append Appends the marked text to the scrap file. Copy Copies the marked text to the scrap file. Cut Cuts the marked text to the scrap file. Paste Pastes the scrap file into the file at the current cursor position.

----------------------------------------------------------------Goodies Menu Commands ----------------------------------------------------------------Goto line number... Moves the cursor to any line number in the current file. Jump to bookmark Moves the cursor to bookmark 1 through 4. Place a bookmark... Sets a bookmark from 1 to 4. Font & ASCII table... Displays the PC8 character set. See the section "Inserting Control Codes and Graphics into a File." Insert DOS screen Inserts the DOS screen into the current file at the cursor position. Duplicate blank lines and the prompt at the bottom of the screen are not inserted into the file. Alternate macro set Uses the alternate macro set stored in the file ZMAC2.CFG. Display active macros Displays the macros in the directory specified by the ZDIR= environment variable. Original macro hot keys Sets the macro keys back to the defaults: record ALT playback ALT + assign ALT 0 Note that the macro functions are programmed into the Zedit macro files as F7, F8 and ALT+F7. This command frees the function keys. Redefine macro hot keys Attaches the record, play and assign functions to any ALT keys. NOTES: To delete a key assignment, assign an empty recording. Zedit asks if you want to delete the assignment. If you delete the macros for ALT_F ALT_B ALT_G ALT_O ALT_S

ALT_T ALT_W you will have to reference the pull-down menus as "CTRL+P" followed by the 1st letter of the menu bar item; for example, to open the File menu, you'll have to press CTRL+PF. 1 fixup 'c' comments Right-justifies one line 'c' comments to the window border. 2 strip trailing spaces Removes trailing white space from the current line. 3 leading tabs to spaces Expands leading tabs to spaces on the current line. 4 leading spaces to tabs Replaces leading tabs with spaces on the current line. 5 expand tabs to spaces Expands all tabs to spaces on the current line. 7 sort file Reorders each line in the file, in correct alphanumeric order. 8 delete duplicate lines Removes duplicate lines from the current file. NOTE: The tab manipulation functions will not cause any visible changes in the file display unless the tab size is set to 1. To see where the tabs are in the text, setting a tab size of 1 will display the character for ASCII code 9.

----------------------------------------------------------------Options Menu Commands ----------------------------------------------------------------25 line display Changes the display mode to 25 lines. 40 line display Changes the display mode to 40 lines. Edit colors... Lets you edit the screen colors. See the section "The Color Editor." Gang edit on/off When a gang edit is in progress, selecting this option turns the gang edit mode on and off. The gang edit status (on/off or active window number) is displayed on the second status line. Save configuration Writes out the following information, which is automatically restored the next time you run Zedit: o o o o o o all colors all of the options on the Print menu including the "before" and "after" strings Window_Framed max macro key assignments for Record/Play/Assign all of the Search options the Options_25/40 line display selection

----------------------------------------------------------------Print Menu Commands ----------------------------------------------------------------File Prints the contents of the file in the current window. Window contents Prints only the visible portion of the text in the current window. Use the mouse to frame the text as you want it printed. Clip long lines When printing a file, this option causes extra characters past the right margin to not be printed. Headers Prints the path and file name, current date and time, and a page number at the top of each page. Indented When printing, text is indented 10 spaces from the left margin. Line numbers Prints line numbers in the left margin. 1 Lines... Lets you specify the number of lines per page. For laser printers, this should be one less than the maximum printable lines per page. 2 Columns... Lets you specify the number of columns across the page. For printers that wrap the lines, this should be one less than the maximum printable columns per page. 3 Str before... This string, if defined and the first character is not chr(255), is sent to the printer BEFORE each Print_File and Print_Window operation begins. 4 Str after... This string, if defined and the first character is not chr(255), is sent to the printer AFTER each Print_File and Print_Window operation ends.

----------------------------------------------------------------Search Menu Commands ----------------------------------------------------------------Repeat Last search Performs the search indicated in the Search dialog box. Replace... Searches and replaces a string of characters. Use this command to replace one string of characters with another. Type in the text to be replaced and press ENTER. Then type in the new text. The cursor moves to the first occurrence and prompts you to confirm the replacement. Press Y to replace the text at the cursor. Search... Searches for a string of characters. Type in the text you want to find and press ENTER. Defaults Resets the search options to the program defaults. Ask for replace When selected, Zedit asks you before replacing text. Case sensitive When selected, found text must exactly match the search string. Otherwise, uppercase and lowercase letters are treated as identical. Fuzzy When selected, white space is compacted and an asterisk "*" will match any characters. For example, "*" will find all strings between two quotation marks. Global replace When selected, search and replace operations will automatically continue until the cursor returns to the original starting position (or ESC is pressed). Hilite found text When selected, found text becomes the active marked text block. This is especially useful when the Fuzzy search is active. Multiple files When selected, and more than one file is loaded into windows, or a Gang Edit is in progress, the search will span multiple files. When a multiple search fails, the search stops at the

original starting file and cursor position. For gang edits, the search stops at the beginning of the original starting file. Whole words When selected, the character(s) to the immediate left and right of the found text must be one of the following for the search to find a match: o o o o o 'A' through 'Z' or 'a' through 'z' '0' through '9' '_' (the underbar character) beginning of line end of line

The search options are saved when the Goodies, Save configuration option is selected.

----------------------------------------------------------------Tab Menu Commands ----------------------------------------------------------------1..8 columns Sets the tab size to the number you select. Hard Sets hard tab mode (every 8 columns). When you press the TAB key, you place the TAB ASCII character into the file. The TAB key moves the cursor to the next position which is a multiple of eight from the left side of the screen. Subsequently, the cursor jumps when you move it over that spot. If you delete the Tab, text jumps to the left to fill the gap. Hard tabs conserve space on your disk. Soft Sets soft tab mode. Soft tabs place spaces in the file, rather than characters, so the cursor will not jump when you move it over a tab stop. Tab stops are determined by the spaces in the line of text directly above the current line. When you are indenting a series of lines, press TAB to move the cursor directly to the column where the text begins on the above line. Soft tabs are useful for programming in high-level languages. NOTE: Changes are only applied to the file in the current window.

----------------------------------------------------------------Window Menu Commands ----------------------------------------------------------------Framed max Maximizes the active window and toggles framed and unframed mode. Maximize Toggles the size of the active window between maximized and its previous size. Maxumall Maximizes all windows. Next Makes the next window in sequence active. Prev Makes the previous window in sequence active. Swap top Toggles between the last two active windows. All same size All windows are resized to the size of the active window. Cascade Windows are arranged on top of each other so all title bars and left borders are visible. Horizontal The two most recently active windows are displayed in horizontally split windows. Ordered stack Windows are arranged so only the title bars are visible, and they are in alphabetic order. Stack Windows are arranged so only the title bars and the active window are visible. Vertical The two most recently active windows are displayed in vertically split windows.

Tile Windows are resized and arranged so all are visible. Drag & size Lets you use the ARROW keys to resize, and CTRL+ARROW keys to move the current window.

----------------------------------------------------------------Control Key Commands ----------------------------------------------------------------Zedit control commands are executed by holding down the CTRL key and pressing a letter key. When a command requires two keys the second letter key can be pressed with or without holding down the CTRL key. For example, pressing CTRL+K followed by CTRL+X is equivalent to pressing CTRL+K followed by X. CTRL+A Positions the cursor at the beginning of the previous word in the file. CTRL+B Formats the paragraph. Starting with the cursor line, the current paragraph is reformatted based on the left and right margins. The right margin is defined as the right edge of the window containing the cursor. The left margin is dynamic and is based on the cursor position at the time CTRL+B is pressed. The first time CTRL+B is pressed during an editing session, you are asked to confirm that word wrap should be activated. This prevents you from accidentally pressing CTRL+B and, subsequently destroying a block of source code. The word wrap reformat function is intended for documenting source code and very simple word processing tasks. CTRL+B treats the following character sequences in the left margins as white space: o o o o <cr>"// " <cr>"; " <cr>"* " <cr>"** "

This allows you to format multiple line asm and c comments that are encased in a block comment header. For example, you can type this... /* ** ** This is a block comment that was originally typed on ** a single line. Pressing CTRL+B has reformatted the ** comment into a multiple line comment. ** */ ...and reformat the paragraph by pressing CTRL+B. CTRL+C

Scrolls the page down. CTRL+D Moves the cursor one position to the right. CTRL+E Moves the cursor one position up. CTRL+F Moves the cursor one word (or text string) to the right. CTRL+G Deletes the character under the cursor. CTRL+H Deletes the character to the left of the cursor. CTRL+I Inserts a tab into the file at the cursor location. CTRL+J Inserts a <CR> at the cursor location. CTRL+K Initiates Wordstar-style file and block commands. See the section "CTRL+K Commands." CTRL+L Repeats the previous search command. CTRL+M Produces the same result as pressing ENTER. CTRL+N Produces the same result as pressing ENTER and then the LEFT ARROW key. CTRL+O Initiates Wordstar-style options commands. See the section "CTRL+O Commands." CTRL+P Opens the menu specified by the next keystroke. Press ENTER to open the previous menu. CTRL+Q

Initiates Wordstar-style "quick" menu commands. See the section, "CTRL+Q Commands." CTRL+R Moves the cursor one page up. CTRL+S Moves the cursor one position to the left. CTRL+T Deletes the characters from the cursor position up to, but not including the first character of the next word to the right of the cursor. CTRL+W Scrolls the window up. CTRL+X Moves the cursor down one line. CTRL+Y Deletes the line the cursor is in. CTRL+Z Scrolls the window down.

----------------------------------------------------------------CTRL+K Commands ----------------------------------------------------------------CTRL+KA Saves the current file; you are prompted for a file name. CTRL+KB Marks the beginning of a block of text. CTRL+KC Copies the marked block. CTRL+KD Saves the current file and opens another file in the same window. CTRL+KE Exits Zedit and prompts you to save each modified file. When prompted, press ENTER to save the file or ESC to NOT save the file and NOT exit Zedit. CTRL+KF Saves all modified files without prompting. CTRL+KG Loads the previous file in the Gang file list. If the current file has been modified, it is automatically saved. CTRL+KH Removes the block markers from the text. CTRL+KI Keeps the current Gang Edit file in RAM, and opens the next Gang Edit file in another window. CTRL+KJ Marks a block of text. See the following section "CTRL+KJ Mark Command." CTRL+KK Marks the end of a text block. CTRL+KL Marks the line at the cursor position. CTRL+KM

Lets you start and stop marking text as you move the cursor around. CTRL+KN Loads the next file in the Gang Edit file list. CTRL+KO Opens another window and file for editing. CTRL+KP Abandons the current file and closes the current window. If the current window is the only open window, the Zedit session ends. CTRL+KQ Abandons the current file and opens another in the current window. CTRL+KR Reads a file into the current window at the cursor position. CTRL+KS Saves the current file, whether or not it has been modified. CTRL+KT Indents the block; intended for structured programming languages. CTRL+KU Removes the block indenting; intended for structured programming languages. CTRL+KV Moves the marked block to the cursor position. CTRL+KW Writes the marked block to another file. WRITE: Replaces the specified file with the currently marked block. APPEND: Adds the currently marked block to the end of the specified file. End the "Write block" dialog by pressing CTRL+ENTER to append the block instead of overwriting the file. For both operations, if the specified file was already loaded into the editor, the in-RAM copy is updated as is the file on disk.

CTRL+KX Saves all modified files and ends the Zedit session. Unlike the File_Exit to DOS command (pre-assigned to ALT+X), CTRL+KX automatically saves all modified files without prompting. CTRL+KY Delete the marked block. CTRL+KZ Abandons all modified files and exits. Zedit prompts you for confirmation before exiting to DOS. CTRL+K 1 Sets bookmark 1. CTRL+K 2 Sets bookmark 2. CTRL+K 3 Sets bookmark 3. CTRL+K 4 Sets bookmark 4.

----------------------------------------------------------------CTRL+KJ Mark Command ----------------------------------------------------------------The CTRL+KJ CTRL sequence provides an all purpose block marking command which can speed up source code editing by a factor of two by eliminating redundant typing and typos. The best way to explain how it works is by example. Assuming that the <RECORD MACRO> and <PLAYBACK MACRO> functions are assigned to F7 and F8 respectively, record the following keystrokes: KEYSTROKE F7 RIGHT_ARROW CTRL+K J ESC or F7 DESCRIPTION Start recording Move the cursor right CTRL+K prefix Mark expression Stop recording

Now, place the cursor at the beginning of the examples that follow (in the on-line ZEDIT.TXT file) and press F8 <PLAYBACK MACRO> to move the cursor through and mark the text: #if A { #if B { /* {[( /* */ { } ( ) [ ] " '?' " #if #endif )]} */ if ((XTree.Gold[version] == 3) || (! XTree_Easy[hho])) { if (XTree_Prune( "NORTON", "PRUNE" ) == OKAY) { XTree_Dialog( "Wise choice!" ); } else { XTree_Dialog( "Is Todd in the room?" ); } something=boolean?yes:no; } } #endif } #endif ?FOO PROC JZ CALL @@: ENDP NEAR @F ?BAR ; ; ; ; ; a conflict between C and ASSEMBLER mark. When the cursor is over does not get marked as part of the search for an asm symbol with a

?FOO /* ** ** ** **

Be aware that there is involving the question "FOO" or "BAR" the "?" word. When you need to

** ** ** ** ** ** ** */

question mark, mark the symbol by hand, and then press CTRL+Q CTRL+J. The editor checks for the following chars (in a lookup table) when deciding if a character is part of a "whole" word: "A..Z" "a..z" "0..9" "_" "@" "#"

----------------------------------------------------------------CTRL+O Commands ----------------------------------------------------------------CTRL+OA Toggles search and replace prompt mode. When ON, Zedit prompts you before replacing found text. CTRL+OB Useful for 'c' programmers, it constructs a file containing the function declarations in the current file. CTRL+OC Toggles case sensitivity during a search. When ON, found text must exactly match the search string. CTRL+OD Executes a DOS command. If you have 600K free EMS, Zedit will use it to save the RAM it uses while the DOS command is executing. Otherwise a disk file is used. NOTE: The contents of the DOS screen can be viewed at any time the editor is idle by holding both the CTRL and ALT keys at the same time. CTRL+OF Toggles a fuzzy search. When ON, the search logic is identical to the XTreeGold CTRL+Search command. CTRL+OG Toggles global search and replace. When ON, Zedit will automatically repeat the search and replace command until you press ESC or the starting cursor position is reached. CTRL+OI Inserts the DOS screen into the current file at the cursor position. Duplicate blank lines and the prompt at the bottom of the screen are not inserted into the file. CTRL+OM Toggles search additional windows or files mode. When ON, Zedit continues a search in the next open window (for Gang Edits, the search continues in the next file in the list). CTRL+ON Saves a pointer to the current filename in an internal buffer. That saved name can then be pasted into any open file with the CTRL+OP command.

CTRL+OP Pastes the name set by CTRL+ON into the current file at the cursor position. CTRL+OT Inserts the current date and time into file at the cursor position. CTRL+OW Toggles search exclude alphanumeric characters mode. When ON, the start and end of the found text cannot be one of the following characters: A..Z, _, 0..9. CTRL+O 1 Displays the current file. Intended for use in macros when you want to watch the progress of a long series of keystrokes while the macro is playing back.

----------------------------------------------------------------CTRL+Q Commands ----------------------------------------------------------------CTRL+QA Searches and replaces a string of characters. Use this command to replace one string of characters with another. Type in the text to be replaced and press ENTER. Then type in the new text. The cursor moves to the first occurrence and prompts you to confirm the replacement. Press Y to replace the text at the cursor. CTRL+QB Moves the cursor to the start of the marked block. If necessary, the window containing the block is activated. CTRL+QC Moves the cursor to the end of the current file. CTRL+QD Moves the cursor to the end of the current line. CTRL+QF Searches for a string of characters. Type in the text you want to find and press ENTER. The cursor moves to the first occurrence. Press CTRL+L to move the cursor to subsequent occurrences. CTRL+QG Moves the cursor to any line number in the current file. CTRL+QI Sets a bookmark from 1 to 4. CTRL+QJ Searches for the next occurrence of the text defined by the currently marked block. The block must be all on one line, and no longer than 50 characters. If a block is not marked, CTRL+KJ (mark expression) is performed for you to automatically search for the expression at the cursor position. A typical use of the function is CTRL+KJ, CTRL+QJ: Mark the expression at the cursor and then search for the next occurrence. CTRL+QK Moves the cursor to the end of the marked block. If necessary, the window containing the block is activated.

CTRL+QL Converts the character under the cursor to lower case. CTRL+QM Converts the current line to upper case, then moves the cursor down one line. CTRL+QN Converts the current line to lower case, then moves the cursor down one line. CTRL+QO Toggles the cursor position between the set of bookmarks most recently used. If necessary, the window containing the bookmark is activated. CTRL+QP Moves the cursor to the Q bookmark (Quickmark). If necessary, the window containing the bookmark is activated. CTRL+QQ Sets the Q bookmark (Quickmark). You can jump to this position at any time by pressing CTRL+QP. CTRL+QR Moves the cursor to the beginning of the current file. CTRL+QS Moves the cursor to the beginning of the current line. CTRL+QU Converts the character under the cursor to upper case. CTRL+QY Deletes the right portion of the current line, from the cursor to the end. CTRL+Q 1 Moves the cursor to bookmark 1. See CTRL+K1. CTRL+Q 2 Moves the cursor to bookmark 2. See CTRL+K2. CTRL+Q 3 Moves the cursor to bookmark 3. See CTRL+K3. CTRL+Q 4

Moves the cursor to bookmark 4. See CTRL+K4.

----------------------------------------------------------------Additional Keystroke Commands ----------------------------------------------------------------ESC Stops macro recording, when the editor is idle and you can enter text into the file. ALT_# ALT_1 through ALT_8 (across the top of the keyboard) moves windows 1..8 to the front. UP ARROW Moves the cursor up one line. DOWN ARROW Moves the cursor down one line. LEFT ARROW Moves the cursor left one character. RIGHT ARROW Moves the cursor right one character. HOME Moves the cursor to the beginning of the line. END Moves the cursor to the end of the line. PGUP Moves the cursor to the previous screen. PGDN Moves the cursor to the next screen. CTRL+HOME Moves the cursor to the beginning of the file. CTRL+END Moves the cursor to the end of the file. CTRL+LEFT ARROW Moves the cursor to the previous word. CTRL+RIGHT ARROW

Moves the cursor to the next word. INS Toggles Insert/Overstrike mode. DEL Deletes the character under the cursor. SHIFT+ARROWS/HOME/END/PGUP/PGDN Performs word-processor style text marking. Text is marked as you move the cursor while holding down the SHIFT key. SHIFT+DEL Cuts the marked text to the scrap file. SHIFT+INS Pastes the scrap file into the current file at the cursor position. SHIFT++ (the plus key on the number pad) Copies the marked text to the scrap file. SHIFT+- (the minus key on the number pad) Appends the marked text to the scrap file. NOTE: The scrap file, ZSCRAP.TXT, is not treated in any special way by the program other than automatically supplying the file open/write/close code a filename. When the file is saved (via a copy/append/cut operation) it gets the same double-backup treatment as files you are editing. This allows you to recover scrap text from either the PRIMARY or SECONDARY backup file when desired. Also, the file is not cached in RAM. This allows you to share data between multiple instances of the program running under a multitasker. And, the performance of the SHIFT+DEL "cut to scrap" function is greatly enhanced when you have a disk cache installed that is caching disk writes. CAUTION: The SHIFT+DEL "cut to scrap" will cut a block to the scrap file when marked blocks are not visible on the screen. CTRL+SHIFT+A through CTRL+SHIFT+Z Inserts that ASCII character code into the file.

----------------------------------------------------------------How Backup Files are Generated ----------------------------------------------------------------Zedit uses a double-backup system when files are saved. The first time a file is saved, a PRIMARY backup file is generated with the file's extension backfilled with a tilde (~) character. Subsequent saves generate a SECONDARY backup file with the file's extension backfilled with an underbar (_) character. The SECONDARY backup always contains the version of the file immediately before it was last saved. The PRIMARY backup always contains the original file. When you know that modified files are in a state you want to keep, delete the PRIMARY backup files using XTreeGold or XTreeNet. This double-backup can save countless hours under various editing conditions, especially after mass editing sessions which last for more than a day, or when multiple files are saved multiple times. The method also keeps unique backups when files in the same directory have the same name but different extensions (for example, FOO.C and FOO.H). ORIGINAL FILENAME FOO FOO.A FOO.C FOO.1 FOO.AB FOO.CD FOO.12 FOO.ABC FOO.DEF FOO.123 FOO.AB1 FOO.AB2 PRIMARY BACKUP FOO.~~~ FOO.A~~ FOO.C~~ FOO.1~~ FOO.AB~ FOO.CD~ FOO.12~ FOO.AB~ FOO.DE~ FOO.12~ FOO.AB~ FOO.AB~ SECONDARY BACKUP FOO.___ FOO.A__ FOO.C__ FOO.1__ FOO.AB_ FOO.CD_ FOO.12_ FOO.AB_ FOO.DE_ FOO.12_ FOO.AB_ FOO.AB_

The example FOO.AB1 and FOO.AB2 shows where the backfill method falls short. Both files will have the same backup names. This, however, is a rare occurrence with text filenames.

----------------------------------------------------------------End of Line and End of File Characters ----------------------------------------------------------------Zedit reads files with any known combination of line termination characters as follows: <cr> <lf> <cr><lf> NULL <cr><cr> <cr><cr><lf> <lf><lf> <cr><lf><lf> one one one one two two two two line line line line lines lines lines lines

When the last byte of a file is an <eof> character, that character is discarded. <eof> characters found in the middle of the file are kept.

----------------------------------------------------------------Inserting Control Codes and Graphics into a File ----------------------------------------------------------------Zedit allows all of the PC8 character set to be visibly inserted into a file with four exceptions: CHR( 0 ) null values are ignored CHR( 9 ) tabs are treated as tab stops CHR( 10 ) line feed (CTRL+J or CTRL+ENTER) ends a line CHR( 13 ) carriage return (CTRL+M or ENTER) ends a line Any other 8 bit value can be inserted into a file by holding down the ALT key while typing the decimal value for the value on the numeric keypad. (This is a standard feature of the PC BIOS). Also, the character codes between chr(1) and chr(31) can be entered by pressing CTRL+SHIFT+'A..Z' (and a few other keys). EXAMPLES: To enter the paragraph symbol (): 1. Hold down the ALT key 2. On the numeric key pad type "20" 3. Release the ALT key -or1. Hold down both the CTRL and ALT keys 2. Press the T key (CTRL+SHIFT+T) To enter the check mark symbol (): 1. Hold down the ALT key 2. On the numeric key pad type "251" 3. Release the ALT key TIP: The Zedit Goodies_Font command displays the complete PC8 character set for reference. NOTES: If your keyboard has more that one ALT, CTRL or SHIFT key, only one of each needs to be pressed. Be aware that entering "non-ASCII" characters into files can cause problems in other programs; the characters may have special meanings to other programs and produce unpredictable results. The same caution applies to printers. In almost all cases, entering an ESC code (chr(27)) into a file at random will stop the printer (and therefore the resulting printing of the file). You can, however, use the ESC code (followed by other

printer-specific codes) to initialize the printer and change fonts.

----------------------------------------------------------------The Color Editor ----------------------------------------------------------------The default Zedit colors are set for a VGA monitor. If you are using an EGA or CGA monitor, the colors will need resetting. When Zedit initializes with a black and white VGA monitor installed, it re-programs the gray colors and makes the bright magenta a bright gray (allowing you to use three shades of gray (plus white) instead of two). Zedit has 15 file window color sets; 13 for color and one each for monochrome and paper-white displays. The monochrome set (/m command line switch) is indicated as "Color set: 14" in the color editor display and the paper white set (/w command line switch) is "Color set: 15." When colors are in use, color sets are pre-assigned to the file windows. To see all of the color sets, open up 13 (small) files and select Window_Tile. To change a color set, activate a window and select Goodies_Colors. To save modified colors, select Options_Save configuration. If you want all of the windows to have the same colors, use the Copy and Paste keyboard functions to assign the colors to all 13 sets. MOUSE TECHNIQUES LEFT BUTTON Select a color to edit from the "picture" of the program screen. -orClick the left color stripe to choose the character color for the selected picture element. -orClick the right color stripe to choose the background color for the selected picture element. RIGHT BUTTON Click anywhere to accept the changes. The color editor only works with the mouse, with a few exceptions, as shown in this list. KEYS C Copies the current color set to a temp buffer. P

Pastes the copied colors. UP ARROW Changes the current character color (-). DOWN ARROW Changes the current character color (+). LEFT ARROW Changes the current background color (-). RIGHT ARROW Changes the current background color (+). Number pad - (Minus key) Cycles backwards through the editable colors. Number pad + (Plus key) Cycles forward through the editable colors PGUP Cycles backwards through the editable colors. PGDN Cycles forward through the editable colors. SPACE Cycles forward through the editable colors. ENTER Accepts any changes. ESC Cancels any changes to the current color set. HOME Accepts any changes, moves to the previous window color set. END Accepts any changes, moves to the next window color set. NOTES: The /M command line switch must be used to edit color set 14 (the monochrome colors) if you do not have a monochrome monitor.

The /W command line switch must be used to edit color set 15 (the paper white colors). And, be aware that these two color sets share the same colors for the pull-down menus, dialog boxes, dialog buttons, and screen background. These are set up to work correctly on a monochrome adapter and should not be changed if you will be using the same configuration on multiple video systems.

----------------------------------------------------------------Zedit Files ----------------------------------------------------------------The following files are Zedit config and macro files. The HST and ZMAC files automatically change as you use the program. ZEXEC.HST ZFILE.HST ZMISC.HST ZLIST.HST ZMAC1.CFG ZMAC2.CFG ZTABS.INI DOS shell command input history file open input history search and miscellaneous input history list of most recently edited files primary macro set alternate macro set w/PC characters default tab definitions

Also note that ZX.EXE is a non-overlaid version of the editor, but is otherwise identical. It is included in case the overlay manager's use of memory or method of opening files conflicts with your system. However, Z.EXE is the preferred executable, since it makes better use of memory resources and leaves more memory for editing files. NOTES: If Z.CFG, the macro files, and the history files have been copied to a directory other than the directory that Z.EXE was copied to, you must set the DOS environment variable ZDIR= to point to the directory containing those files. Zedit searches directories for Z.CFG, Zxxxx.HST and the macro files in the following order: o o o ZDIR= environment variable. The same directory that Z.EXE was executed from. The same directory that Z.EXE was executed from with "\CFG" added to that path.

Therefore, if you have a directory called C:\BIN in your path, and you do not want to create or modify any batch files to install Zedit, then Z.EXE (and/or ZX.EXE) can be copied to C:\BIN and the config files and macro files can be copied to either C:\BIN or C:\BIN\CFG.

----------------------------------------------------------------DOS 5, Z.EXE, ZX.EXE and Memory Usage ----------------------------------------------------------------The amount of memory available for editing files is displayed in the upper right corner of the screen next to the date. Use the CTRL+END command and look at the "Byte nnn" field on the status line to see the size of the current file. Z.EXE When DOS upper memory UMB support is available, the Z.EXE code cache, history buffers, and screen buffers get placed in upper memory allowing the maximum available memory for editing files and executing programs from within Zedit. ZX.EXE ZX doesn't have a code cache and runs about 10% faster than Z. ZX should be used in place of Z under the following conditions: o o Z.EXE is slow on your machine. Z.EXE causes problems with a TSR or networking software.

----------------------------------------------------------------EMS and Running Other Programs from within Zedit ----------------------------------------------------------------FREEING UP RAM TO EXEC OTHER PROGRAMS When you invoke the File_COMMAND.COM function (CTRL+OD shell out to DOS), Zedit needs to free up RAM by storing the buffers containing the files you are editing in either EMS or a disk file. The required storage space is dependent upon the size of the files and can be anywhere from 50K to 600K bytes. WITH EMS If your system has enough available EMS to hold the file buffers, then Zedit will perform exec functions as fast as COMMAND.COM can be re-invoked. See your DOS reference manual for instructions on setting up an EMS emulator. WITHOUT EMS If your system does NOT have enough EMS to hold the file buffers, then Zedit will store the file buffers in a temporary file in the same directory that holds your config and macro files. If you want to place the temp file on a RAM disk, then set ZTEMP= in your environment space. Be aware, however, that the RAM disk may need up to 600K bytes of free space. INVOKING COMMAND.COM

If you simply want to get to the DOS prompt, enter a blank line at the "Enter DOS command" prompt. THE DOS SCREEN Zedit takes a snap shot of the DOS screen when it starts up and keeps it updated every time you execute a DOS command from within the editor. The contents of the DOS screen can be viewed at any time the editor is idle (and not in a dialog or sub program such as the color editor) by holding down both the CTRL and ALT keys simultaneously or clicking and holding on the status bar.