home *** CD-ROM | disk | FTP | other *** search
-
- ==============================================================================
- [ THE KAY*FOG RBBS | CPM-CC06.ART | posted 01/18/86 | 261 lines 14k ]
-
- The CP/M Connection Originally published in
- by Computer Currents
- Ted Silveira 2550 9th Street
- (copyright and all rights reserved) Berkeley, CA 94710
-
-
- June 4, 1985
- KEYS AND OUTLINES
-
- If you own a CP/M computer, it's easy to feel left out. When you read
- most major computer magazines, you get the impression that no one bothers
- to write software for anything except IBM and Apple anymore. Well, take
- heart. Two hot items currently are key-redefinition programs (SuperKey,
- ProKey, etc.) and outline processors (ThinkTank, MaxThink, etc.), and CP/M
- users can get them free from the public domain.
-
-
- QK21
-
- QK21 (QwikKey version 2.1), by Anton Fleig, is a public domain key-
- redefinition program. It lets you redefine a key to be any string of
- characters you want, either plain text (your name, address, and phone
- number) or a program command (like ^K^S^Q^P in WordStar). You can then run
- another program, like WordStar, and everything will go normally, until you
- hit the redefined key. At that point, the key-redefinition program will
- spit out the stored string of characters just as if you'd typed it at the
- keyboard, only faster.
-
- Key-redefinition programs are meant to work with other programs, and
- they work especially well with word processors. WordStar, for example, has
- no command to move forward or backward by pages (only by screens). But by
- using a key-redefinition program, I can create my own page-forward
- command--I set one key to send out the sequence [^C^C^C^X^X^X^X^Z^Z^Z^Z^Z].
- This sequence would be too clumsy if I had to type it in each time. But
- with the key-redefinition program, I just hit one key, and the program does
- the work, fast. I've become so addicted to this trick that I now have a
- set of 20 "new" WordStar commands, including ones to move to the beginning
- or end of a sentence or paragraph and to delete a sentence or paragraph.
-
- QK21 isn't quite as versatile as the commercial key-redefinition
- programs, but it's very useful. It can redefine any key on your keyboard,
- including special function keys. It can redefine up to 31 different keys,
- and each definition can be approximately 30 characters long (31 minus the
- number of characters originally sent by the key).
-
- QK21 lets you save and load sets of key definitions, so you can have
- one set for your word processor, another for your spreadsheet, and so on.
- It also lets you make new definitions "on-the-fly," in the middle of using
- another program. For example, about one paragraph into this article, I set
- one of my keys to send the characters [QK21], without leaving WordStar.
-
- QK21 handles special function keys well. My Televideo 925 terminal
- has function keys that send out a three character sequence, starting with
- ^A and ending with ^M (so one key sends out ^AA^M, the next ^AB^M, and so
- on). QK21 handles this sequence perfectly, recognizing the ^A as the lead-
- in character, redefining the following character, and ignoring the trailing
- ^M. It can also distinguish between the sequence ^AB^M sent by a function
- key, which it translates, and the same sequence typed in at the keyboard,
- which it ignores. Without this feature, I wouldn't be able to use my
- function keys with WordStar, which uses ^A as one of its major commands.
-
- The QK21 documentation also tells you how to send characters that
- aren't on your keyboard, if you're handy with DDT.COM or a disk editor like
- DU. You could use the same method to make QK21 distinguish between keypad
- and keyboard characters, if your computer sets the high bit on keypad
- characters (as Kaypros do, for example).
-
- All key-redefinition programs have a few drawbacks in common, because
- of the way they work. First, all steal part of your computer's upper
- memory for themselves and the key definitions. With QK21, you lose close
- to 4K, so if you have a very large spreadsheet or BASIC program, for
- example, that just fits in memory under normal circumstances, it may not
- fit with QK21 running. (You can easily remove QK21 when you need to and
- reload it later.)
-
- Second, all key-redefinition programs change certain addresses in CP/M
- in order to intercept characters from the keyboard before they go to CP/M
- or another program. This interception can cause conflicts with a few other
- programs, mostly those that also want to intercept these characters.
- Again, the solution is to remove QK21 temporarily.
-
- QK21 also has a few weaknesses of its own. It accepts only a limited
- number of definitions, though enough for most purposes. It won't let one
- definition call another definition. And it gives you no way to control the
- speed at which it sends out its stored strings. With most programs, like
- WordStar, that's no problem, but a few, like dBase II, will gag if they get
- characters too quickly.
-
- Most important, QK21 has no "supershift" key. You can redefine
- function keys easily, if you have them. But if you don't, you can only
- redefine your regular keyboard keys, which means that you won't be able to
- use those keys in their usual way. Most people can find half a dozen
- keyboard keys they don't use, but after that, it's a problem. Commercial
- programs get around this problem by defining a supershift key, usually the
- backslash (\). With the supershift, you can redefine the two-key sequence
- [\A] however you want and still be able to use your normal [A] when you
- need it.
-
- Though QK21 has some limitations, its good points more than make up
- for them. And if you've never used a key-redefinition program, you have a
- treat in store.
-
-
- TOUR20
-
- TOUR20's author, Ed Taychert, calls it a "document hierarchy editor,"
- but most people will call it an "outline processor." Briefly, TOUR20 is a
- tool for handling ideas rather than for writing text. You jot down ideas
- in one-line headings, shuffle the headings around and arrange them
- hierarchically, with indentations:
-
- 0. Contents
- 1. What are the TOUR20 commands?
- 1.1 For adding new headings
- 1.1.1 APPEND
- 1.1.2 INSERT
- 1.2 For moving around
- 1.2.1 UP and DOWN
- 1.2.2 NEXT and BACK
- 1.2.3 <INDEX>
- 1.2.4 TOP
- 1.3 For editing outlines
- 1.3.1 CUT and PASTE
- 1.3.2 CHANGE
- 1.3.3 DELETE
- 1.4 For viewing outlines
- 1.4.1 VIEW and LIST
- 1.4.2 SUBTREES
- 1.4.3 ENTIRE
- 1.5 For adding text
- 1.5.1 INTRO
- 1.5.2 SUMMARY
- 1.6 For reading and writing files
- 1.6.1 WRITE
- 1.6.2 READ
- 1.6.3 TYPE
-
- The basic unit in TOUR20 is the heading, a one-line (or slightly
- longer) piece of text. These can be entered one at a time or in an
- automatic append mode that lets you dash off a string of headings and worry
- about exactly where they belong later. A heading can also be inserted into
- an existing outline at any point, causing all following headings to be
- renumbered.
-
- You move through the outline you've created by using UP and DOWN
- (which move you up or down a level), NEXT and BACK (which move you forward
- or backward one item, regardless of level), or <INDEX>. <INDEX> is the
- address of a particular heading, specified by its levels; in the outline
- above, the index 0.1.3.1 would take you to the heading "CUT and PASTE."
-
- When it's time to edit, you can CHANGE any heading (rewrite it, in
- other words). You can also DELETE any heading, which also deletes any
- subordinate headings so that deleting heading 1.5 above would also delete
- 1.5.1, 1.5.2, and 1.5.3.
-
- The most important editing tools are CUT and PASTE. CUT removes a
- heading and stores it in a buffer; PASTE takes the heading out of the
- buffer and places wherever you want. You can cut 20 headings before
- pasting, but you must be careful about the order--the last heading cut is
- the first heading pasted.
-
- While you're working, you see only a small part of your outline--the
- current heading and its immediate subheadings. If your current heading
- were 1.4 above, you'd see only subheadings 1.4.1, 1.4.2, and 1.4.3. This
- "information hiding" is meant to help you concentrate on parts of your
- problem or project. You can use VIEW (or LIST) to see other parts of the
- outline, SUBTREES to see everything below any particular heading (its
- subheadings, their sub-subheadings, and so on), and ENTIRE to see the
- complete outline.
-
- TOUR20 has only two commands for adding text to the outline. INTRO
- will place a block of text before a group of subheadings, and SUMMARIZE
- will place one after; both are very limited.
-
- TOUR20 can also WRITE all or part of your outline into a disk file,
- READ another TOUR20 file into your current outline, and TYPE a text file on
- the screen without inserting it into the outline.
-
- What's TOUR20 like to use? It has a strong personality; you could
- even say it has a theory about life. TOUR20 believes you'll do best if you
- work with a top-down, divide-and-conquer approach, gradually breaking your
- project or problem into smaller and smaller pieces. It also believes you
- should concentrate on one section at a time. You don't have to play along,
- but that's the way TOUR20 "wants" to work.
-
- In practice, you'll probably use TOUR20 one of two ways. You can use
- the top-down method by stating your subject in a general form ("What are
- the TOUR20 commands?"). You divide that into smaller pieces (movement
- commands, editing commands, etc.), and those pieces into still smaller
- ones, refining and extending your outline, focusing on each small section,
- until you have everything worked out in detail. As you work, you use the
- viewing commands to see how your current section fits into the general
- scheme, and you use the editing commands to rearrange things as new ideas
- crop up. This approach suits TOUR20 very well and can turn huge projects
- into a series of manageable steps.
-
- You can also use the brainstorming approach. Here you put TOUR20 into
- APPEND mode and bang in a series of ideas, without regard to their
- relationship to each other or their level of generality. In the process,
- you create a list of ideas, questions, and odd bits of information. Then
- you sort through your list, using CUT, PASTE, and other editing commands to
- discard the junk and to group related details under more general ideas.
- Your structure and your controlling idea grow out of the details as you
- fight to get them in order. This approach also works but doesn't go as
- smoothly as the top-down approach, largely because it's inherently messier,
- partly because TOUR20 makes it easier to work with small sections than with
- the whole outline.
-
- With either method, your final steps will be adding any necessary text
- with INTRODUCE and SUMMARIZE, and then creating a paper printout (formatted
- with indentations) or a disk file (no indentations, unfortunately) for
- reference. All the output is done through a separate program, ROFFTOUR--
- not an easy program to make friends with and not up to the quality of TOUR
- itself.
-
- TOUR20 has at least three weak spots in its generally solid user
- interface:
-
- 1) You can enter a very long heading--TOUR20 will simply wrap the line
- when you hit the edge of the screen--but at about 130 characters, TOUR20
- starts putting your text in the next heading, without any warning. You
- don't find out what's happened until you hit <RETURN>.
-
- 2) If you accidentally hit ^C during a session, you drop straight out
- of TOUR20 into CP/M, without any chance to save your work.
-
- 3) If you hit ^Z accidentally, TOUR20 goes into an infinite loop (at
- least on my machine).
-
- You're warned against these last two in the documentation, but that's
- no protection against accidents. All three of these problems need to be
- fixed.
-
- Is TOUR20 worth having? Absolutely yes--it's an interesting new
- program and easy to use, once you're familiar with it. TOUR20 lets you do
- things you can't do with a word processor, and because it works entirely in
- memory, it's fast.
-
- You have to get a feel for how the program works and understand its
- limits. At first, TOUR20 and I circled each other two stray cats. But now
- it's settled in to a regular space on my working disks.
-
- TOUR20 was originally released as "shareware" (free distribution, $30
- suggested contribution), but Ed Taychert has now generously released it
- completely into the public domain and plans to remove the shareware notice
- for TOUR21.
-
-
- Next issue, some odds and ends--a batch of miscellaneous programs
- useful for people who work with words.
-
- ------------------------------------------------------------------------------
- Ted Silveira is a freelance writer and contributing editor to several
- computer-oriented publications. He appreciates suggestions or feedback
- and can be reached through the KAY*FOG RBBS (415)285-2687 and CompuServe
- (72135,1447) or by mail to 2756 Mattison Lane, Santa Cruz, CA 95065.
-
- ------------------------- End of CPM-CC06.ART Text -------------------------
-