Printer Friendly

You can do anything with WordStar.

You Can Do Anything with WordStar

If you have a small budget, and an even smaller affection for BASIC, you may want to produce catalog cards with the boilerplate program that comes with your wordprocessor.

The method presented here works with WordStar 2.6, WordStar 3.0 and WordStar 4.0 (WordStar Professional). It will probably work with WordStar 5.0. I couldn't get it to work with WordStar 2000. With a little work and some bug extermination, you may be able to do something similar with other programs, such as WordPerfect or MultiMate.

To produce catalog cards with BASIC or one of the boilerplates, you have to get your cataloging information into the computer in the right format, and you have to get it printed out correctly on the cards.

"Right" According to WordStar

The "right" format from WordStar's point of view is a sequential file -- one you can read only in sequence, without being able to jump around. Boilerplate programs such as Mailmerge trudge through these data files from beginning to end, reading one record after another and plugging these packets of information into form letters. We have all received that kind of letter: "Dear Mr. ELM STREET LIBRARY have we got a deal for you!"

Your form letter will be the template for a set of catalog cards. Instead of names and addresses, your data file will contain the information you want printed on the cards. But how do you create a data file that your boilerplate program won't trip on? You can use a list processor, which is a simple-minded database manager that works with sequential files. It will allow you to enter, delete, and correct information. Many free and inexpensive programs exist for this purpose. I used one of these for a while until I got tired of goind around the barn every time I wanted to correct a typo, and chopping my records to fit its limited format.

Then I found I could use a text editor such as Qed or WordStar itself, in its nondocument mode. As long as yoy end up with a file that is organized into fields, that are grouped into records, one right after another, with no hidden formatting characters, it will work.

Carriage Returns and Fields

Fields should be separated by carriage returns, and carriage returns should appear between records. The address below is a record. Each line in the address is a field, that is, each field is separated by a carriage return.


Below are two records with fields separated by commas. The records are separated by a carriage return.


I can only make WordStar print catalog cards with a file that looks like the first example.

Notice that every field has quotes around it to isolate the commas in the text from those used to set off the different fields. Even if you use carriage returns between fields, you need the quotes. Leave them off and WordStar will think any commas in the text are field dividers, and your catalog cards will look like parodies of themselves.

Nondocument Files

If you want to use WordStar or a text editor to create the sequential data file, there is one hitch. How do you avoid getting mixed up and creating a lot of unusual catalog cards?

Since you have to use a file that looks like a list, it is easy to construct a screen. You can open what WordStar calls in its Kafka modality a "nondocument file," and put a list of your fields in it. When you open a file with "N" for "nondocument," WordStar creates a straight ASCII file without any formatting codes. Put an equal sign or some other symbol you don't intend to use at the first tab as a place holder.


Use block copy to fill your file with as many sets of field names as you need in your data file. Keep this file to set up the next data file.

Next open your data file itself, also in the nondocument (ASCII) mode, read your file of field names into it, and set a tab at the equal sign. Switch off the insert option so that you don't push text ahead of you when you tab.

When you are ready to enter the catalog card information in your file, enter the information for your first field, press return, and hit the tab. Your cursor should jump across the field name to the equal sign. The text you enter should overwrite the equal sign. If you don't have enough title to fill up all the title fields, just hit return and pass those fields by. Leave the equal signs there for later.

Whenthe file is full, put quotes around each field. In WordStar, you simply find every carriage return and replace it with a carriage return surrounded by quotes. You than add quotes at the beginning and end of the file, and you have lines with quotes at the beginning and end. The equal sign is merely a place holder to keep WordStar from leaving out quote marks. A missing quote mark can wreak havoc when you try to print. When you are ready to print, just use find-and-replace to delete all the equal signs.

Deleting the Column Names

Then you delete the column of field names. If you have a WordStar with column replace, use it. If you don't, set up field names that begin with a character you never plan to use in a record. Then delete that character followed with the right number of wild card characters.

In WordStar 2.6, which doesn't have column delete, you wild card character is <A. You hit <P and then you hit A. The <P tells WordStar that the next character is to be interpreted as a control character. If you started every field name with *--that is, if your fields were called *CALLN, *TITLE, *AUTHOR, and so on -- you would delete *<A<A<A<A<A<A<A. You would use as many wild card characters as there are in the field name plus the spaces between the field name and the text you want to print.

Last of all, you need to double check to see if each record contains the right number of fields. I set a function key to go down the right number of lines. If you have twenty fields in a record, go down twenty lines. Each time you hit the function key, you should be looking at the same field -- for example, the call number. If you are one field long or short, correct the problem and continue.

The rigamarole in getting the file ready to print is offset by the fact that you get the full power and flexibility of your word processor for data entry. Make a mistake? Just arrow up and correct it. Overwrite a field name? Just leave its mutilated remains in place, move over, and re-enter the text were it belongs. The field name is just a guide to be discarded when you are through with it.

Backing Up the File

Of course, you want to make a copy of your file under another name before you start printing. If WordStar stumbles, or your printer stalls, you continue by deleting the part of the file which printed correctly, starting again with the rest.

To get the cataloging information from the file to the catalog cards, you need template files with designated landing sites for each piece of information. You also need a way to tell WordStar how many subject cards to print. As you know, especially if you have had to file a lot of them, you can have anywhere from one to five extra subject or title cards.

Separate Files for Variations

One solution is to have a separate file like a multipage form letter for each possible variation. I have five files, named ONE, TWO, THREE, FOUR, and FIVE, that have one, two, three, four, or five extra pages in them. Each extra page is an extra subject card.

To get WordStar to choose between the different templates, you need a command file. The file below, created by Lawrence Jerome, chooses a template file by reading its name from the data file. That is, the name of the correct template file is always in the last field of each record in the data file.

A command file is nothing but a series of "dot commands" typed into a text file. A dot in the first column of a line tells WordStar to interpret any letters on the line as commands, hence the name "dot command." The command file sets page size, line length, and margins, so that these commands don't need to be put in every template file. It also picks the template file to plug the current record into. You tell it to Select File (.SF), SUBNUM:, and it looks for SUBNUM, which is the name of the piece of information in the last field in every record.

.OP [Tells WordStar to omit page numbers] .MT0 [Sets the top margin at 0] .PO 3 (Starts lines 3 spaces from the right hand edge .PL18 [Sets the page length at 18] .OJ OFF [Keeps WordStar from moving words to justify right margin] .MB0 [Sets bottom margin at 0] .RM 46 [Sets the right margin at 46] .DF Catalog.Dat [Tells Word Star to read from data file: CATALOG.DAT] .RV CALLN, T1, T2, T3, AU, PUB1, PUB2, PUB3, S1, S2, S3, S4, S5, K1, K2, K3, K4, K5, K6, SUBNUM [Tells WordStar to read 20 fields from the data file and name them T1,T2,T3, and so on] .FI &SUBNUM& [Tells WordStar to use the template file named in the last field of the record that it just read]

For some reason WordStar versions 3.0 and above pick up the .op from the first line of the command file and add it to the file name specified in SUBNUM. You have to do things WordStar's way. You have to name your template files one.op, two.op, three.op, etc. So if you have five subjects, SUBNUM is five. and the program will look for a file named "five.op." If you have three subject cards, SUBNUM is "three," and WordStar will look for file "three.op."

Template for Five Subjects

The template below will work for a card with five subjects. The template for a card with four extra is the same except that it's only isx "pages" long and there are only four tracings.


&CALLN& [WordStar plugs in the call number from the data file here between the ampersands]

&T1& &T2/O& &T3/O&, by &AU&, &PUB1& &PUB2/O& &PUB3/O& [Wordstar inserts the words or phrases represented by the title, author and publisher between the ampersands.]

1. &S1& 2. &S2/O& 3. &S3/O& .PA [WordStar form feeds to a new page here]

&CALLN& &AU& [author card]

&T1& &T2/O& &T3/O&, by &AU&, &PUB1& &PUB2/O& &PUB3/O& [the slash followed by an O between the ampersands tells WordStar to omit the field--that is, not to print anything in its place if it is emply]

1. &S1& 2. &S2/O& 3. &S3/O& 4. &S4/O& &S5/O&


&CALLN& &S1& [first subject card]

&T1& &T2/O& &T3/O&, by &AU&, &PUB1& &PUB2/O& &PUB3/O&

1. &S1& 2. &S2/O& 3. &S3/O& 4. &S4/O& &S5/O& .PA &CALLN& &S2&

&T1& &T2/O& &T3/O&, by &AU&, &PUB1& &PUB2/O& &PUB3/O&

1. &S1& 2. &S2/O& 3. &S3/O& 4. &S4/O& &S5/O& .PA

&CALLN& &S3&

&T1& &T2/O& &T3/O&, by &AU&, &PUB1& &PUB2/O& &PUB3/O&

1. &S1& 2. &S2/O& 3. &S3/O& 4. &S4/O& &S5/O& .PA

&CALLN& &S4&

&T1S &T2/O& &T3/O&, by &AU&, &PUB1& &PUB2/O& &PUB3/O&

1. &S1& 2. &S2/O& 3. &S3/O& 4. &S4/O& &S5/O& .PA

&CALLN& &S5&

&T1& &T2/O& &T3/O&, by &AU&, &PUB1& &PUB2/O& &PUB3/O&

1. &S1& 2. &S2/O& 3. &S3/O& 4. &S4/O& &S5/O& &CALLN& (shelf list)

&T1& &T2/O& &T3/O&, by &AU&, &PUB1& &PUB2/O& &PUB3/O&

1. &S1& 2. &S2/O& 3. &S3/O& 4. &S4/O& &S5/O& .PA

All my cards are title main entries. Most of my documents are written by people who include most of the abstract in the title. My subject cards can be extra author cards, extra title cards, or subjects from my authority file. So I just call them 1., 2., 3., and so on. If you want to give every sort of extra card its right name, you could omit the numbers printed outside the ampersands and identify you cards in separate fields in your data file.

Instead of 1., 2., or 3. in the tracings in the template files, you could have a variable name &TR1&, &TR2&. or &TR3& in front of them.

&CALLN& [WordStar plugs in the call number from the data file here between the ampersands]

&T1& &T2/O& &T3/O&, by &AU&, &PUB1& &PUB2/O& &PUB3-O&

&TR1&. &S1& &TR2&. &S2/O& &TR3&. &S3/O& .PA [WordStar form feeds to a new page here]

I have only five subjects because I started with a list processor that would only handle fourteen fields. You could have twenty subject fields in your data file. Of course, you would have to have twenty separate template files.

The foregoing is a long way from a canned program, but if you already have WordStar or can make your word processor sit up and perform like WordStar, the price is a long way from the elaborate programs. It is also extremely flexible. Besides, this method leaves you (as do many cataloging programs) with a tantalizing residue: machine-readable information. You end up with the beginning of an online catalog, but how do you use all that wonderful data?

As the bytes accumulate, the mass becomes unwieldly, but there are several things you can do. For one thing you can convert your records to fixed-length records, and import your new fixed-length files into a database program such as dBASE, or you can hold your horses until you're ready to go online. Then you can huddle with the vendor of a likely automation program for advice on how to proceed.


Eventually I plan to go with a vendor, but in the meantime a program like ZYINDEX, which indexes text files, works very well if you have a hard disk.

ZYINDEX allows Boolean searches, that is, you can do AND and OR terms together, and the more expensive version allows you to search only certain fields. For example, if you were looking for books about New York, this would avoid getting all books published in New York.

We are starting to use the information we currently have online by using ZYINDEX. To have it both ways -- to print catalog cards and still end up with a file that is user friendly to ZYINDEX -- I enter a separate set of key words in the fields KEY 1 through KEY 6, and after I've printed catalog cards I use WordStar Mailmerge to read my twenty-field file and print it to disk in a pure ASCII file containing the keyword fields without the subject card fields.

CALLN G1 9 TITLE Determination of Rock Mass Modulus Variation TITLE with Depth for Weathered or Jointed Rock TITLE = AUTHOR Rowe, R.K. PUB reprint from Canadian Geotechnical Journal, Volume 19, PUB No. 1, 1982, p. 29-43. PUB = SUB1 Elastic Modulus rocks SUB2 Rock Mechanics SUB3 Canadian Geotechnical Journal SUB4 = SUB5 = TR1 = TR2 = TR3 = TR3 = TR4 = TR5 = KEY1 Elastic Modulus, Rocks, Rock Mechanics, plate load test KEY2 = KEY3 =[subjects are entered here that will be used for disk KEY4 =access later] KEY5 = KEY6 = SUBN three

Also, going the ZYINDEX route has enabled me to start adding the typed tables of contents of important proceedings to the catalog files. The clerical section is typing them during slack times. They don't know what a pure ASCII file is, or a sequential file, but they don't need to. Text files in MultiMate can be converted to ASCII files easily enough. ZYINDEX will index and search these files as well as the catalog files proper. It doesn't care.

Our offices in Salt Lake City, Albuquerque, and El Paso can browse through the newer books in the catalog and a number of proceedings for themselves. When I get local requests, I won't have to rummage through the unindexed masses to find that "Binderburg paper on Expansive soils, in the 10th or 11th ISSMFE conference."

I was able to start producing catalog cards for the price of a used OSBORNE I, since it came bundled, as they still do, with the software that I needed. As the great hardware deflation caught up with me, I was able to switch to an IBM compatible, and eventually to add a hard disk. The same system and the same software has come right up the ladder with me, and when we switch to a library program, it will probably be a high-end system. That will be in the future for a library that is already one of the finest geotechnical libraries in the country, but which must keep pace with the growth of the firm which it exists to support.

A completed file (of one record) starts this way:

CALLN G1 9 TITLE Determination of Rock Mass Modulus Variation TITLE with Depth for Weathered or Jointed Rock TITLE = AUTHOR rowe, R.K. PUB reprint from Canadian Geotechnical Journal, Volume 19, PUB No. 1, 1982, p. 29-43. PUB = SUB1 Elastic Modulus Rocks SUB 2 Rock Mechanics SUB3 Canadian Geotechnical Journal -- SUB4 = SUB5 = KEY1 Elastic Modulus, Rocks, Rock Mechanics, Plate Load Test KEY2 = KEY3 = KEY4 = KEY5 = KEY6 = SUBN three

Quotes are added by using find and replace to replace all carriage returns with carriage returns preceded and followed by quote marks.

"CALLN G1 9" "TITLE Determination of Rock Mass Modulus Variation" "TITLE with Depth for Weathered or Jointed Rock" "TITLE =" "AUTHOR Rowe, R.K." "PUB reprint from Canadian Geotechnical Journal, Volume 19," "PUB No. 1, 1982, p. 29-43." "PUB =" "SUB1 Elastic Modulus Rocks" "SUB2 Rock Mechanics" "SUB3 Canadian Geotechnical Journal" "SUB4 =" "SUB5 =" "KEY1 Elastic Modulus, Rocks, Rock Mechanics, plate load test" "KEY2 =" "KEY3 =" "KEY4 =" "KEY5 =" "KEY6 =" "SUBN three"

The field names are deleted by deleting the column that the field names are in.

"G1 9" "Determination of Rock Mass Modulus Variation" "with Depth for Weathered or Jointed Rock" "" "Rowe, R.K." "reprint from Canadian Geotechnical Journal, volume 19," "No. 1, 1982, p. 29-43." "" "Elastic Modulus Rocks" "Rock Mechanics" "Canadian Geotechnical Journal" "" "" "Elastic Modulus, Rocks, Rock Mechanics, plate load test" "" "" "" "" "" "three"

The = signs are deleted:

"G1 9" "Determination of Rock Mass Modulus Variation" "with Depth for Weathered or Jointed Rock" "" "Rowe, R.K." "reprint from Canadian Geotechnical Journal, Volume 19," "No. 1, 1982, p. 29-43." "" "Elastic Modulus Rocks" "Rock Mechanics" "Canadian Geotechnical Journal" "" "" "Elastic Modulus, Rocks, Rock Mechanics, plate load test" "" "" "" "" "" "three" "end"

A dummy field is added to the end of the file because WordStar always hangs up at the last record. The file is ready.

Susanne Jerome is a librarian at Sergent Hauskins & Beckwith Engineers Geotechnical Library in Phoenix, Arizona.
COPYRIGHT 1989 Information Today, Inc.
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 1989 Gale, Cengage Learning. All rights reserved.

Article Details
Printer friendly Cite/link Email Feedback
Author:Jerome, Susanne
Publication:Computers in Libraries
Date:Apr 1, 1989
Previous Article:dBASE and the full MARC format.
Next Article:Book budgets, community college libraries, and Lotus 1-2-3.

Terms of use | Privacy policy | Copyright © 2020 Farlex, Inc. | Feedback | For webmasters