Home of the original IBM PC emulator for browsers.
[PCjs Machine "ibm5170"]
Waiting for machine "ibm5170" to load....
This diskette contains the Zuri text editor, which is a very powerful program made up of many features. Primarily, it is very easy to use; Zuri is greatly intended for someone who easily forgets the common commands. The program can edit as big a file as will fit into memory (maximum 480K in a 640K machine) and text lines can be up to 225 characters, also lines longer than 75 characters are wrapped to the next line. Zuri supports text macros with search and replace options and also block commands which are available. A great deal of documentation comes with Zuri as well as on-screen help menus. IMPORTANT NOTE: The Zuri editor works ONLY on the MONOCHROME adapter card. System Requirements: 190K, at least one disk drive and a moncohrome display. With this memory, the maximum editable file is 32K. Each additional 32K memory adds that much to the maximum editable file, up to the maximum 640K giving a possible file size of 480K! How to Start: Read carefully the ZURI.DOC file and all other .DOC files for the different parts of the editor. TO start the editor, enter ZURI <ENTER>, making sure that the file zuri.com is on the drive being used. Suggested Registration: $15.00 includes update and Turbo Pascal source code if you request it. File Descriptions: -------- --- - ZURI EDITOR (V3.2) DI COM This is a program to list a directory in sorted form Z COM The control file for the .chn programs, must be on same di DI DOC Documentation for di.com (28k) ZMAKEKEY CHN This program provides an easy way to make text macros on Z ZURI COM The zuri editor. Start it by typing zuri ZMAKEKEY DOC Documentation for zmakekey.chn ZURI DOC Documentation for the zuri editor GO BAT Startup information, type: GO (enter) ZURITWO DOC Documentation for zuritwo.chn ZURITWO CHN Display two files simultaneously, in windows ZURISPLT DOC Documentation for zurisplt.chn ZURISPLT CHN To split a file into several parts ZURISORT DOC Documentation for zurisort.chn ZURISORT CHN Sorts a text file, which can be quite big ZURISEQ DOC Documentation for zuriseq.chn ZURISEQ CHN Checks that a file is in a given order ZURIREIN DOC Documentation for zurirein.chn ZURIREIN CHN Cleans up a file; ZURIPRNT DOC Documentation for zuriprnt.chn ZURIPRNT CHN A program to print a specified file ZURIMERG DOC Documentation for zurimerg.chn ZURIMERG CHN To merge two sorted text files ZURIJUST DOC Documentation for zurijust.chn ZURIJUST CHN A program to word-wrap and justify a file ZURIINST COM To install go-to-DOS feature on the editor; see zuri.doc ZURIEXTR DOC Documentation for zuriextr.chn ZURIEXTR CHN Extracts specified lines from a file ZURIDELL DOC Documentation for zuridell.chn ZURIDELL CHN Eliminates duplicate lines in a file ZURICOUN DOC Documentation for zuricoun.chn ZURICOUN CHN Counts lines and words in a file ZURICOMP DOC Documentation for zuricomp.chn ZURICONV DOC Documentation for zuriconv.chn ZURICONV CHN Convert special characters; see also zurirein.chn ZURICOMP CHN Compare two files, line by line ZURICHS DOC Documentation for zurichs.chn ZURICHS CHN A program to choose records by certain criteria ZURI HLE Help file for the editor. Can be omitted if desired
di.com is a program to list a directory in sorted form, and list files, too. It is invoked as follows: di [x:] [ds] [b] where  indicates optional stuff. x is a drive letter a, b, etc.; if x: is not there, the default drive will be taken. Normally, the directory will be listed alphabetically by name. d means list by date instead, s means list by size instead. b means list in reverse order. Once the program is activated, a small, self-explanatory description appears at the top of the screen. It explains how to get more of the directory, delete a file where the cursor is, list a file, move the cursor, return to DOS, etc. All of a file can be listed, but it is done in small pieces; within a piece, one can go backwards and forwards, but once a new portion of the file is read in, it is not possible to go back to a previous piece without going back to the directory and restarting the listing process.
------------------------------------------------------------------------------ Disk No 657 Zuri Editor v1 DS2 ------------------------------------------------------------------------------ This diskette contains the Zuri text editor, which is a very powerful program made up of many features. Primarily, it is very easy to use; Zuri is greatly intended for someone who easily forgets the common commands. The program can edit as big a file as will fit into memory (maximum 480K in a 640K machine) and text lines can be up to 225 characters, also lines longer than 75 characters are wrapped to the next line. Zuri supports text macros with search and replace options and also block commands which are available. A great deal of documentation comes with Zuri as well as on-screen help menus. The Zuri editor works ONLY on the MONOCHROME adapter card. ------------- ZURI EDITOR (V3.2) DI COM This is a program to list a directory in sorted form DI DOC Documentation for di.com (28k) Z COM The control file for the .chn programs, must be on same disk ZMAKEKEY CHN This program provides an easy way to make text macros on Zuri ZMAKEKEY DOC Documentation for zmakekey.chn ZURI COM The zuri editor. Start it by typing zuri ZURI DOC Documentation for the zuri editor ZURI HLE Help file for the editor. Can be omitted if desired ZURICHS CHN A program to choose records by certain criteria ZURICHS DOC Documentation for zurichs.chn ZURICOMP CHN Compare two files, line by line ZURICOMP DOC Documentation for zuricomp.chn ZURICONV CHN Convert special characters; see also zurirein.chn ZURICONV DOC Documentation for zuriconv.chn ZURICOUN CHN Counts lines and words in a file ZURICOUN DOC Documentation for zuricoun.chn ZURIDELL CHN Eliminates duplicate lines in a file ZURIDELL DOC Documentation for zuridell.chn ZURIEXTR CHN Extracts specified lines from a file ZURIEXTR DOC Documentation for zuriextr.chn ZURIINST COM To install go-to-DOS feature on the editor; see zuri.doc ZURIJUST CHN A program to word-wrap and justify a file ZURIJUST DOC Documentation for zurijust.chn ZURIMERG CHN To merge two sorted text files ZURIMERG DOC Documentation for zurimerg.chn ZURIPRNT CHN A program to print a specified file ZURIPRNT DOC Documentation for zuriprnt.chn ZURIREIN CHN Cleans up a file; can be use to check for trojans ZURIREIN DOC Documentation for zurirein.chn ZURISEQ CHN Checks that a file is in a given order ZURISEQ DOC Documentation for zuriseq.chn ZURISORT CHN Sorts a text file, which can be quite big ZURISORT DOC Documentation for zurisort.chn ZURISPLT CHN To split a file into several parts ZURISPLT DOC Documentation for zurisplt.chn ZURITWO CHN Display two files simultaneously, in windows ZURITWO DOC Documentation for zuritwo.chn GO BAT Startup information, type: GO (enter) PC Software Interest Group (PC-SIG) 1030D E. Duane Ave. Sunnyvale, CA 94086 (408) 730-9291 (c) Copyright 1986
Program Name: The Zuri Editor (v3.2) Author Name: J. Donald Monk Address: 2135 Goddard Place Boulder, Colorado 80303 Tel number: Not listed Suggested Donation: $15 - includes information about updates Send a disk and get the newest version from the author. Program Description: This diskette contains the editor, Zuri, and several other programs useful for working with the editor, or handling text files in general. All of the programs were written in Turbo Pascal on an IBM PC with 640K memory, monochrome display, Epson FX-100 printer. The Zuri editor will only operate on an IBM or compatible monochrome adapter. The CGA will not support Zuri. The Zuri editor has the following features: (1) It is very easy to use, intended for someone who easily forgets the common commands; (2) can edit as big a file as will fit into memory (maximum 480K in a 640K machine); (3) lines can be up to 225 characters, and lines longer than 75 characters are wrapped to the next line; (4) text macros can be defined; (5) reading and writing files are fast operations; (6) search and replace are available; (7) block commands are available; (8) lines are numbered on the screen. Memory requirement is at least 190K. With this memory, the maximum editable file is 32K. Each additional 32K memory adds that much to the maximum editable file, up to the maximum 640K giving a possible file size of 480K. In any case, no file is allowed to have more than 9999 lines. The editor cannot handle a file that has lines longer than 225 characters, and also fouls up if characters with ascii 7,8,10,13,26 are in the file (except to indicate end of line or end of file). The Zuri editor is powerful and easy to use. It should meet if not exceed all general purpose text editing needs. Those who desire an inexpensive text editor who own a monochrome monitor adapter will find Zuri extremely useful and valuable.
ZMAKEKEY.CHN: MAKE THE FILE ZURI.KEY This is an interactive program to make a macro file zuri.key for the zuri editor, along with a file zurikey.lst which records those macros in a readable form. If one or both of these files already exist, the new information will be added at the end. Note that ZURI will take the FIRST macro for a given key if zuri.key has more than one macro for a given key.
THE ZURI EDITOR Version 3.2 (June 29, 1986) This program is made available "as is", without any warranties, explicit or implied, as to performance, merchantability, or fitness for any particular purpose, whether or not a contribution is made. It has been put in the public domain. It is advisable to thoroughly test this program before using it seriously. It can be freely copied and distributed provided no charge is made. If you find this program of use, a contribution of $15 would be appreciated. In return, I will inform you of any changes, fixes, additions, etc. If you supply a standard DOS 2.0 double sided double density 5 1/4 " diskette in a self-adressed, stamped mailer along with the $15, I will also send you the latest version of the editor along with its documented source code (in TURBO PASCAL), so that modifications can be made at will. J. Donald Monk 2135 Goddard Place Boulder, Colorado 80303 Memory requirement: 190K. With this memory, the maximum editable file is 32K. Each additional 32K memory adds that much to the maximum editable file, up to the maximum 640K giving a possible file size of 480K. In any case, no file is allowed to have more than 9999 lines. System requirement, other limitations: I do not know the limits. In developing it, I have used an IBM PC with 640K memory, varying sized virtual disks, monochrome display, Epson FX100 printer, DOS 2.0. I have not used it with tree directories, piping, etc. NOTE: The editor cannot handle a file that has lines longer than 225 characters, and also fouls up if characters with ascii 7,8,10,13,26 are in the file (except to indicate end of line or end of file). ERROR PROTECTION: Generally speaking, there is enough error protection so that the editor will not crash during normal use. In most cases an error will be indicated at the bottom of the screen. In some cases, an error will simply be ignored, and nothing visible will happen. WARNING: As of this date, the editor has not been used very much, so there may be unexpected things happening. TABLE OF CONTENTS Summary of Commands...............................................3 Editing Commands..................................................4 Current memory line...............................................4 Going to a new line...............................................6 Other commands....................................................7 Changing defaults................................................10 TO START THE EDITOR, TYPE zuri <enter> For this, the file zuri.com should be on the drive being used. There are other files, which are not absolutely essential, but may be of use: zuri.hle - a help file zuri.doc - this documentation zuri.key - a file of user-defined macros (see below) zuri.my - a file of user modifications (see below) zuriinst.com - a file to "install" the editor, so as to be able to use DOS from within it ESSENTIAL INFORMATION To start zuri, type zuri <enter> Then you will be asked for a file name, and, in general you can start editing at once, since there is a help screen. ************************************************************************** * SUMMARY OF EDITING COMMANDS * * Page* * Backspace : delete character to the left of cursor, go left.......5 * * Del : delete character at cursor, pull characters in........5 * * Ins : toggle between insert/ overwrite modes (insert = fat cursor)...5 * * Cursor Left : move cursor left one character........................5 * * Cursor Right : move cursor right one character.......................5 * * Tab : move cursor to next tab stop..........................5 * * Ctrl CursorLeft : move cursor left in steps of 20....................5 * * Ctrl CursorRight : move cursor right in steps of 20.................5 * * Home : move cursor to the beginning of current memory line...5 * * End : move cursor to the end of the current memory line.....5 * * alt a : enter a (special) ascii character.....................5 * * alt f : forget changes on current memory line.................6 * * TEXT MACROS : ......................................................6 * * ENTER : split line, or create blank line......................7 * * CursorUp : go to the same column in the screen line above........7 * * CursorDown : go to the same column in the screen line below........7 * * alt 1 : go to top of screen, in same column...................7 * * alt 2 : go to middle of screen, in same column................7 * * alt 3 : go to bottom of screen, in same column................7 * * PgUp : go to previous screen full............................7 * * PgDn : go to next screen full................................7 * * Ctrl PgUp : scroll back continuously..............................7 * * Ctrl PgDn : scroll forward continuously...........................7 * * Ctrl Home : go to beginning of the file...........................7 * * Ctrl End : go to the end of the file.............................7 * * alt b : block commands (copy, move, delete)...................7 * * alt d : delete a memory line..................................8 * * alt g : display last filename saved to........................8 * * alt h : display a help file...................................8 * * alt i : set up automatic indenting............................8 * * alt j : concatenate two memory lines..........................8 * * alt k : shift lines to the right or left......................8 * * alt l : list specified memory lines...........................8 * * alt n : repeat previous search................................8 * * alt o : go to DOS (must be installed).........................9 * * alt p : change wrap limit.....................................9 * * alt q : search for a string...................................9 * * alt r : replace one string by another........................10 * * alt s : save the file to disk................................10 * * alt u : display the actual file size.........................10 * * alt v : toggle word wrap, not at end of file.................10 * * alt w : toggle word wrap, at end of file.....................10 * * alt x : exit editor..........................................10 * * alt y : save part of the file................................11 * * alt z : insert a file........................................11 * ************************************************************************** NOTE: It does not matter whether, for example, alt a or alt A is pressed. EDITING COMMANDS The screen has a window of 75 columns by 21 lines, where the file being edited is displayed, in part. Left of this window are line numbers, not present in the file itself, and a vertical border. Line 22 displays a double line, to form a border. Line 23 displays informational messages: the name of the old file, or an indication that it is a new file; the file size, in lines and bytes, and the total file size allowed with the given memory available (virtual disks are excluded in counting this memory); an indication of the wrap number (see below), or an indication that wrap is off (both of these are only indicators for when one is working at the end of a file); and an indicator of the column on the screen line that the cursor is on (it can vary from 1 to 75). Screen lines 24 and 25 are used for interaction with the editor. Text entered here in response to the editor's requests can be edited a little bit: the cursor left and right keys, backspace, and del keys as well as the usual letters and symbols are available for use here. The byte count will be about the same as that in the diskette file at first, but after editing awhile it may exceed that; it is lengthy to give the rules for this, so the byte size information should be used for a rough idea only. On the other hand, the line size information is always accurate. To get the exact number of bytes which will be written out to a file, use the command alt u (see below). One can start with an old file, or a new one; the initial messages indicate how to make this choice. WORD WRAP is automatically set at column 65, but the limit changed can be changed (see below). Also, it is set ON for work at the end of the file, and OFF otherwise. Both of these defaults can be changed (see alt-v, alt-w). The word wrap works as follows: when typing beyond the limit, say column 65, the first space (blank) which is typed will cause a line break; both a new blank memory line, and the corresponding screen line, will be input, exactly at the blank (which disappears). The wrap limit can be set to anything up to 225. It is possible that during editing, the cursor can be beyond the actual end of the memory line. If an ordinary character key, or a macro, is pressed while this is true, the editor will act as if the space beyond the former end of the current line is filled with blanks. Otherwise there are no characters between the end of the memory line and the cursor position. The main part of the editor can be divided into three kinds of activity: (1) working on a memory line - the CURRENT MEMORY LINE (2) GOING TO A NEW MEMORY LINE, and (3) OTHER COMMANDS. CURRENT MEMORY LINE At a given time in the editing process, the cursor is on a certain screen line, which is associated with part of a file memory line. As the displayed memory line is edited, the file memory line is not changed. The current memory line is stored temporarily in a string variable curline, which is modified continuously during editing. The associated file memory line is changed - updated - only when the current memory line is left for some purpose, the most frequent of which is to go to a new file memory line. Ordinary letters, digits, and special characters are entered in the usual way. By default they are inserted before the letter where the cursor is, but this can be changed with the Ins key; see below. This insert mode is indicated with a fat cursor; the overwrite mode is indicated on the display with the ordinary cursor. Special keys for the current memory line are as follows: BACKSPACE: This works in the usual way: the cursor goes back one, and erases the character there, bringing in any other characters, if any, from the right. It works on the memory line: if at the far left of a screen line which is not the beginning of the memory line, it goes to the right of the screen line above. DEL: This also works as usual: deletes the character at the cursor, pulling in from the right the remaining characters, if any, in both the memory and screen lines. If DEL is used when part of the memory line is below the screen, all of the memory line will be pulled up, scrolling other screen lines up. INS: This toggles from the insert mode (fat cursor) to the overwrite mode (ordinary cursor) or vice versa. ARROW POINTING LEFT: takes cursor one column to the left. As a special case, the cursor goes from column 1 of a screen line to column 75 of the line above if not at the beginning of a memory line. ARROW POINTING RIGHT: similar to arrow pointing left. The cursor is not allowed to go beyond the screen line containing the last part of the current memory line, however. TAB (On the left, under Esc key, on the standard keyboard): goes to the next tab stop. If beyond the end of the current line, or if TAB takes you beyond, the intervening space is filled with blanks. The default tab stops are set at columns 5, 10, 15, . . ., 225. To have different tabs, they should be put on a single line in a file named zuri.tab on the same drive as the zuri programs. The single line should have the format t1 t2 t3 t4 . . . ti where t1, t2, t3, . . . are the tabs in increasing order, each positive and less than 226. The number of tabs is at most 45, but the line can be as long as 180 characters. Ctrl cursorLeft : takes the cursor left in steps of 20, otherwise acting like cursorleft. Ctrl cursorRight : takes the cursor right in steps of 20, otherwise acting like cursorRight. End : the cursor goes to the very end of the current memory line. Home : the cursor goes to the beginning of the current memory line. alt a : This puts the editor in the interactive mode, with the cursor on screen line 24. Give the integer which is the ascii code of a character, and it will be entered appropriately in memory and on the screen, at the position where the cursor was before pressing alt a. Note: the control characters with ascii codes 7,8,10,13,26 cause trouble for the editor. alt f : FORGET: when editing a memory line, this is a "forget changes" command - on the screen and in the storage curline, all changes made on the memory line from the time the cursor most recently came to this memory line are forgotten. After leaving a memory line, changes can no longer be forgotten. TEXT MACROS: It is possible to define special keys for often used sequences of characters; these macros can be used in the file being edited, or within an interactive response, but cannot be used to specify a sequence of commands to the editor. The specifications for the special keys are put on a special file named zuri.key, on the same drive as the other zuri programs, in the following format: second code, macro, second code, macro, . . . . (one line for second code, then a line for the macro, etc.). Here the "second code" refers to the extended ascii code (see the IBM basic manual, appendix G). The keys available are the function keys F1-F40, and the macros may be up to 75 characters each. The function keys F1-F10 have second code 59-68; Shift- F1-F10 have second code 84-93; Ctrl- F1-F10 have second code 94-103; and Alt- F1-F10 have second code 104-113. Example: Let the file zuri.key contain the following four lines: 59 Boulder, Colorado 94 It is a cold day, but it is supposed to warm up tomorrow. THEN when in the editor, pressing F1 will produce Boulder, Colorado in the file being edited (it will be inserted if in the insert mode, while it will overwrite if in the overwrite mode - see below) and pressing ctrl F1 will produce It is a cold day, but it is supposed to warm up tomorrow. If macros are not wanted, then it is not necessary to have the file zuri.key at all. If the format of the file zuri.key is not correct, the editor will abort when it tries to load it. Since loading zuri.key is the first thing that the editor tries to do, this does not waste much time. If several macros are available for a given key, the FIRST such will be the one taken. GOING TO A NEW LINE When going to a new line, the current line is saved, except as indicated below. It is actually put in a new place in memory, and the old line is not deleted, although it is no longer accessible to the user. This creates "garbage", and the byte count, which counts both the old and the new line, becomes inaccurate. ENTER : This key, also called carriage return, is used in several ways. Basically, if in the middle of a memory line, pressing enter will cause the first part of the current memory line, up to the symbol before the cursor, to remain there, while the last part, including the symbol where the cursor was, goes to a new memory line created following the current one. The cursor goes to the beginning of the second of the two memory lines formed in this way, unless automatic indenting is set (see below). The first one is put in the file memory, but not the second. There are important special cases: if the cursor is at the first current memory line position, an empty line is created preceding the current memory line. If the cursor is at the end of the current memory line, a new line is created following the current memory line. This last case is the way that brand new text is created. If the cursor is beyond the end of the current memory line, which can happen, the space between the end and the cursor is filled with blanks before the new line is formed. ARROW POINTING UP : goes to the same column of the screen line above; scrolls screen if initially on the first screen line. ARROW POINTING DOWN : similar to arrow pointing up. alt 1 : go to the top of the screen, keeping the cursor in the same column. alt 2 : go to the middle of the screen, keeping the cursor in the same column. alt 3 : go to the bottom of the screen, keeping the cursor in the same column. PgUp : goes to the previous page of text, with some overlap. The cursor goes to the top of the new page, in the same column it started in. PgDn : goes to the next page of text, with some overlap. The cursor goes to the bottom of the new page, in the same column it started in. Ctrl PgUp : Scroll back continuously. Can be stopped by pressing any key, and then normal editing can continue. If the beginning of the file is reached, of course this procedure stops, and line 1 is ready to be edited. Ctrl PgDn : Similar to Ctrl PgUp, but scrolling forward. It the end of the file is reached, the last line of the file is ready to be edited. Ctrl Home : editing goes back to the beginning of the file, with the cursor in the upper left. Ctrl End : editing goes to the end (last 15 screen lines) of the file. The cursor goes to the very end of the last memory line in the file. Thus if one wants to add to a given file, the procedure is to load it, press the ctrl end keys, then press ENTER, and you are ready to go. OTHER COMMANDS alt b : BLOCK COMMANDS: A block is defined by the user, and then one of three commands can be done on the block: copy it to another place, delete it, or move it to another place (destroying the old copy). When alt b is pressed, you will be presented with a small menu on screen lines 24 and 25: b : mark block beginning - if <b> is pressed, the beginning of the block will be set at the cursor, and will be displayed in reverse video (black on white). e : mark block end - if <e> is pressed, the end of the block will be set at the cursor, and will be displayed in blinking reverse video. If the end of the block is a blank, it will not blink. If the cursor is beyond the end of the current memory line, special things apply when doing the operations below. y : display block beginning - if <y> is pressed, the beginning of the block, as previously defined, will be displayed in reverse video, with the cursor there. If the beginning was not defined, nothing will happen. z : display block end, similarly. c : copy the block to just before the cursor position. If it is a pure line block, starting at the beginning of a line and ending beyond the end of a line, with the cursor at the beginning of another line, you have the choice of making several copies. d : delete the block. m : move the block to just before the cursor position, destroying the old block. NOTE: After setting up a block, any changes made on one of the lines where the block is located will unset the block. Also, moving, copying, or deleting will unset the block. alt d : DELETES the memory line, and associated screen lines, determined by where the cursor is. The cursor goes to the beginning of the next memory line, or, if the last memory line in the file was the one deleted, to the previous line. The line is not actually removed from memory, but it becomes inaccessable to users, and will not be present when the file is written to a disk. So for most practical purposes it is deleted. The byte count remains the same, however. alt g : Displays name of the last file saved to, or indicates that the stuff being edited has not yet been saved. alt h : A help screen is displayed. It uses the file zuri.hle, which should be on the default drive. alt i : AUTOINDENT. Interactively, one has the following choices: indent the same amount the preceding line is indented, or indent a fixed amount. At the start of editing, there is no automatic indenting. To return to no automatic indenting, use alt i to set automatic indenting to 0. alt j : JOINS. When this key combination is pressed, the memory line below the current memory line is pulled up to the current one, with a space character between them, and the cursor goes to the beginning of the concatenated line. alt k : User is prompted for 3 integers, i,j,k. Lines i through j are shifted to the right k units. The ends may be shifted off. k negative means to shift to the left. alt l : Display on the screen starting at a prompted line number. alt n : REPEAT PREVIOUS SEARCH. If there was a previous search, it is repeated, starting from the line the last search was on. If the last search went to the very end, the new search starts over at line 1. If there was not a previous search, nothing happens. Also, if the previous search was at a line that is now beyond the end of the file, because of deletions, nothing happens. alt o : GO TO DOS. When this key combination is pressed, the editor is temporarily left, and control goes back to DOS, where any programs at all can be run, if there is enough memory. When ready to return to exactly the same place in the editor, type exit <enter> Command.com must be on drive a: to use this command. Also, the command has to be installed, in the following way. When using zuri on a disk, also load the file zuriinst.com. Type zuriinst <enter> then follow the instructions, which ask you how you want memory split up between the editor and DOS for this command. After the command is installed, it does not need to be reinstalled for this disk, and the file zuriinst.com can be deleted. Various programs give the editor trouble with this command. The user should test out his favorite listers, spoolers, etc with this command and see which ones really work. Some of them will work better if DOS is given more memory with zuriinst as above. Others still won't work (this has been my experience). alt p : CHANGES THE WRAP LIMIT; user prompted for the new wrap limit, which can be any integer < 301, although all integers > 224 have the effect of no wrap limit (= wrap off). Afterwards, the cursor returns to its previous position, and editing can continue. alt q : SEARCHES FOR A STRING. User is prompted for the number of the memory line at which to begin the search, and for the search string, which may be up to 75 characters long. Also, the user has the option whether to ignore uppercase/lowercase distinctions (in both the stuff in memory and the search string simultaneously), and whether to search in the forward or backward direction. After each "find", user is prompted whether to continue or not. After the search is finished, the editor stops over the string found, or if no strings were found, goes back to the beginning of the file. alt r : REPLACES ONE STRING BY ANOTHER. The user is prompted for six things: starting memory line, ending memory line, whether to be prompted for go-ahead or not at each occurrence of the first string, whether to ignore the uppercase/lowercase distinction in the old string, and finally, the two strings. To replace in a backwards direction, simply make the ending memory line less than the starting memory line. The string which is to be replaced must be non-empty; otherwise, the editor will keep waiting until a non-empty one is entered. After the procedure is finished, a list of the lines in which replacements were made is given on lines 24 and 25; only the last 20 replacements are given if there were more than 20. Finally, after a key is pressed, the editor goes back to the beginning of the file. If the result of replacing a line is exactly the same as the old line, the replacement procedure will terminate. Note that it is quite possible to exceed the current file limit with this command, even if the the size of the file when written out on a disk does not exceed it. This is because each changed line is stored in a new place in memory, with the old (inaccessible) line still taking up space. If the current limit is exceeded, because of such garbage or otherwise, the editor will then stop and allow the user to decide what to do. One possibility is to exit the editor, saving the file, and then read it back in, thereby getting rid of the garbage. alt s : SAVES the file being edited. Prompts for file name. If the file already exists, you will be asked whether you want to overwrite it (destroy the old file, and put the new one in its place). There is no automatic back-up for the file being edited, so you should save often enough, with a new file name of your own choosing, to protect your work from machine errors, interruptions, etc. After saving, the editor returns to the current line being edited, with the cursor in the same position as before the command was given. The current memory line IS saved before this operation. The disk associated with the file name is checked to make sure that enough space is available for the given file (using the real byte count available to the user in the command alt u). If it does not have room, an error message is given and the user can try again with a different drive, or decide not to save the file. alt u : displays the real size of the file being edited if it is written to a disk. This is useful in many cases, since the displayed byte count on line 23 is not very accurate. alt v : TOGGLES WORD WRAP on to off, off to on, for work not at the end of the file. alt w : TOGGLES WORD WRAP on to off, off to on, for work at the end of the file. alt x : EXITS the editor. Will give a prompt for saving the file being edited or not. alt y : SAVE part of the file. The segment of lines given by the current block is saved to a file of user's choice. alt z : INSERT a file before a given line. Note: a big file will take quite a while to be inserted. CHANGING DEFAULTS A limited number of defaults can be changed by putting any one or more of the following lines in a file named zuri.my: automatic indenting wrap off wrap at i overwrite These should be lower case. i is an integer. "Automatic indenting" means that each line will be indented the same as the previous line when using the enter key. The default is insert, and "overwrite" changes that to overwrite. With this file on the zuri disk, the indicated choices become the defaults (which can still be changed while editing, if desired).
ZURICHS.CHN - EXTRACT RECORDS FROM A TEXT FILE This program allows you to select records from a text file according to certain criteria. There is a number x such that all records consist of exactly x lines. A criterion for selection consists of a conjunctive normal form of simple criteria. That is, the criterion is a conjunction of disjunctions of simple criteria. Each simple criterion is a pair of the form <LineNumber> <string>, indicating that if the string is in the lineNumber of a record then that record should be selected; but if the line number is negative, -y, it means that a record with that string in line number y should not be selected. One is allowed to write to various files; one conjunctive normal form per file. The output files should all be distinct. The uppercase/lowercase distinction is ignored, both in the keywords and in the target strings. Because this program is slow, ram disks should be used if possible. Limits: The maximum number of lines per record is 10. The maximum number of files to write to is 14. The maximum number of disjunctions per file is 5. The maximum number of disjuncts per disjunction is 5. The maximum length of a keyword is 40 characters; it will be truncated otherwise. Lines in the file should have at most 255 characters. To use this program non-interactively, type z zurichs inputfilename <enter> In this case, the other necessary information has to be put beforehand in the file zurichs.key, in the following format: record size (maximum 10) 'output' } The material in braces is considered outputfilename1 } to be one key. 'or' } linenumber keyword } linenumber keyword } . . } . . } . . } 'or' } linenumber keyword } . . } . . } . . } 'output' outputfilename2 'or' linenumber keyword . . . .
ZURICOMP.CHN - COMPARE TWO FILES LINE BY LINE Lines that do not compare are displayed, and there is then the option to stop, or to continue comparing. If the two files have different lengths, that is indicated too, at the end. At the end of the program, the message Except for indicated errors, if any, the files compare o.k. is displayed. To use this program non-interactively, type z zuricomp infilename1 infilename2 <enter> To stop the program before completion, type any key.
ZURICONV.CHN - CONVERT CERTAIN ASCII CHARACTERS. A very special program, which takes a user-specified file and replaces characters with ascii 250-254 by characters with ascii 7,8,10,13,26 respectively. To use this program non-interactively, type z zuriconv infilename outfilename <enter> To exit the program before completion, press any key.
ZURICOUN.CHN - COUNTS THE NUMBER OF LINES AND WORDS IN A TEXT FILE The program gives a running count of these numbers, and also a final count. To use the program non-interactively, type z zuricoun infilename <enter> To stop the program before completion, press any key.
ZURIDELL.CHN ELIMINATE DUPLICATE LINES This program eliminates duplicate lines in a file, sending the result to an output file. It is possible to put on the output lines an indication of the number of duplicates, and a comment up to 40 characters long. To use the program non-interactively, type z zuridell infilename outfilename <y or n> <comment> Here the comment can be up to 40 characters long. 'y' indicates that the number of duplicates is to be mentioned on each line, 'n' that it is not to be mentioned. The comment also goes on each line if 'y' is on the command line. To stop the program before it completes, type ctrl-break.
ZURIEXTR.CHN EXTRACT BLOCKS OF LINES FROM A FILE This little program extracts specified lines from one file, and puts them into a new file. The lines are specified in segments, x1 y1, x2 y2, etc. One must have x1 <= y1 < x2 <= y2 < x3 . . . One can have up to 1000 such intervals. The program will tell you if you don't put them in non-decreasing order, but not if you exceed the number of lines in the input file - then the numbers beyond the maximum in the file will be ignored. Lines x1 through y1, x2 through y2, etc, are written to the output file. It is possible to store the specified segments in the file zuriextr.key for future use in non-interactive mode. Used in the non-interactive mode, the following must be entered on the command line: z zuriextr <input file name> <output file name> <enter> Also, the indicated intervals have to be on the file zuriextr.key in the following format: x1 y1 x2 y2 . . . . . . To exit the program before it is finished, press any key.
ZURIJUST.CHN JUSTIFY A FILE This is a simple program to take one file and produce a new file with lines justified. The available commands are as follows: \j at the beginning of a line: start justification \q at the beginning of a line : end justification \b at the end of a line : temporarily stop justification In addition, a blank line causes a temporary stop in justification, as does a line which starts with a blank. In addition to indicating input and output files, you have to indicate the desired line length. To use this from the command line, type z zurijust <input> <output> <linelength> <enter> There are no defaults here - but typing just z zurijust will cause the program to ask for the three pieces of required information. To stop this program before it officially ends, type ctrl-break.
ZURIMERG.CHN MERGE TWO SORTED FILES This is a program to merge two text files. The files consist of records, where there is a fixed integer <= 10 such that all records have length x. The order used for merging is determined by keys, as explained below. The files can be of any size. There can be up to ten keys. The first key establishes an order; among items equal by the first key, the second key establishes an order, etc. The format of the keys is as follows: lineNumber BeginningColumn NumberOfColumns Direction Ignore where lineNumber is the line, between 1 and rec_size inclusive, of the key, BeginningColumn is the column to begin the sort distinction at, NumberOfColumns is the number of columns to consider significant (up to 255), Direction is a single letter 'f' or 'b' indicating increasing or decreasing ascii order, and Ignore is 'y' if uppercase/lowercase is to be ignored, 'n' otherwise. It is possible to have the keys stored on the file zurisort.key for future use in the non-interactive mode. To merge two files using only the command line, type z zurisort <infilename1> <infilename2> <outfilename> <enter> where everything is self-explanatory. To stop the program before it finishes, type ctrl-break.
ZURIPRNT.CHN PRINT A FILE This is a simple print program. It will break long lines into 75 character parts to fit on standard size paper. And it will skip over the perforation, and provide line numbers if wanted. The first page has at the top the name of the file being printed, the current date, taken from the PC clock, and the date the file was created. The pages are numbered. Optionally, all headings can be omitted. One can start printing at any specified page of a file, and end on any specified page. If a line has just one character ascii 12, the printer will go to a new page (form feed). To use this program non-interactively, type z zuriprnt <filename> <lineno> <startno> <endno> <head> <enter> Here lineno should be 'y' or 'n', meaning to give line numbers or not. head should be 'y' or 'n'. 'y' means to supply the initial heading, and page numbers for each page; 'n' means not to put such headings on any page. In the above line, only the first two entries are mandatory, but the line must be an initial segment of the above. If only z zuriprnt <enter> is entered, you will be asked for the remaining entries. If at least z zuriprnt <filename> is entered, missing entries will take the following default values: lineno - n startno - 1 endno - 10000 head - y To stop this program before it is finished, press any key.
ZURIREIN.CHN CLEAN A FILE FOR THE EDITOR Another very special program, used to clean up files. The following things are done to a specified file: a line longer than 200 characters is split up. Ascii 10 standing alone is deleted. Ascii 7,8,26 are replaced by ascii 250,251,254, except for the possible ascii 26 at the end of the file. For more on this stuff see ZURICONV.CHN above. To use this program non-interactively, enter z zurirein <input file name> <output file name> <enter> To stop the program before completion, press any key.
ZURISEQ.CHN CHECK THAT A FILE IS IN A SPECIFIED ORDER This program checks that a given file is in the proper order according to keys described below in the description ZURISORT.doc. As the program is running, a running count of the line number being processed is given. When entering this program interactively, it is possible to have the keys stored on the file zurisort.key for future use in the non-interactive mode. To use the program in the non-interactive mode, the keys have to be stored on the file zurisort.key as described in zurisort.doc Then type z zuriseq <file name> enter To stop the program before it finishes, type ctrl-break.
ZURISORT.CHN SORT A FILE This is a program to sort a text file. The file consist of records, where there is a fixed integer <= 10 such that all records have length x. The order used for sorting is determined by keys, as explained below. There can be up to ten keys. The first key establishes an order; among items equal by the first key, the second key establishes an order, etc. The format of the keys is as follows: lineNumber BeginningColumn NumberOfColumns Direction Ignore where lineNumber is the line, between 1 and rec_size inclusive, of the key, BeginningColumn is the column to begin the sort distinction at, NumberOfColumns is the number of columns to consider significant (up to 255), Direction is a single letter 'f' or 'b' indicating increasing or decreasing ascii order, and Ignore is 'y' if uppercase/lowercase is to be ignored, 'n' otherwise. It is possible to have the keys stored on the file zurisort.key for future use in the non-interactive mode. To sort a file using only the command line, type z zurisort <inputfilename> <outputfilename> <enter> where everything is self-explanatory except. The keys should be in the above format, one per line, in the file zurisort.key. That file should start with a single line giving the record size. To stop the program before it finishes, type ctrl-break.
ZURISPLT.CHN TO SPLIT A FILE INTO SEVERAL PARTS This is a program to split a file into several parts. Three things must be given to this program: name of the input file, prefix of the output files (they will be named pre.000, pre.001, etc., where pre is that prefix), and an increasing sequence of integers m1, m2, m3, . . . ,mk. Lines 1 through m1-1 go to pre.000, lines m1 through m2-1 to pre.001, . . . lines mk to the end of the input file to the last file. To use this program non-interactively, enter the following (maximum 127 characters total): z zurisplt <infilename> <outprefix> m1 m2 m3 m4 . . . <enter> To stop the program before it finishes, type ctrl-break.
zuritwo.chn This is a program to display two files simultaneously, in windows. Once the program is started, two windows are displayed, with the names of the files indicated. Then to display a new line to the first file, in the top window, type t, and to display a new line in the second file, in the bottom window, type b, and to exit, type x. To use this program non-interactively, type z zuritwo <filename1> <startline1> <filename2> <startline2> <y or n> where y means line numbers wanted, n means linenumbers not wanted.
Volume in drive A has no label Directory of A:\ DI COM 16570 7-29-86 3:14p DI DOC 935 8-13-86 9:43a FILES657 TXT 3084 1-04-80 1:40a GO BAT 598 1-04-80 1:44a NOTES657 TXT 2015 1-04-80 1:41a Z COM 11488 6-13-86 10:09a ZMAKEKEY CHN 1366 6-08-86 10:30p ZMAKEKEY DOC 417 6-14-86 10:02a ZURI COM 50155 6-29-86 4:45p ZURI DOC 28148 6-29-86 4:48p ZURI HLE 1753 6-29-86 3:59p ZURICHS CHN 4437 6-13-86 10:06p ZURICHS DOC 2046 6-14-86 9:56a ZURICOMP CHN 1067 6-10-86 9:24p ZURICOMP DOC 527 6-14-86 1:03p ZURICONV CHN 660 6-12-86 9:30a ZURICONV DOC 379 6-14-86 1:18p ZURICOUN CHN 689 6-10-86 9:26a ZURICOUN DOC 293 6-14-86 1:21p ZURIDELL CHN 1600 6-14-86 1:42p ZURIDELL DOC 696 6-14-86 1:45p ZURIEXTR CHN 1777 6-12-86 3:46p ZURIEXTR DOC 1081 6-14-86 1:51p ZURIINST COM 10794 1-15-86 3:03p ZURIJUST CHN 3642 6-14-86 10:46p ZURIJUST DOC 892 6-14-86 10:52p ZURIMERG CHN 3112 8-13-86 10:34a ZURIMERG DOC 1313 8-13-86 10:45a ZURIPRNT CHN 2816 6-22-86 10:25p ZURIPRNT DOC 1457 6-15-86 10:54a ZURIREIN CHN 748 6-12-86 9:22p ZURIREIN DOC 571 6-14-86 1:11p ZURISEQ CHN 2803 6-15-86 3:28p ZURISEQ DOC 685 6-15-86 3:35p ZURISORT CHN 7365 8-13-86 10:38a ZURISORT DOC 1418 8-13-86 10:14a ZURISPLT CHN 1413 6-12-86 9:20p ZURISPLT DOC 735 6-15-86 3:39p ZURITWO CHN 1283 6-12-86 9:33p ZURITWO DOC 554 6-15-86 3:44p 40 file(s) 173382 bytes 129024 bytes free