Newsgroups: comp.sys.amiga.reviews Path: menudo.uh.edu!usenet From: barrett@cs.umass.edu (Daniel Barrett) Subject: REVIEW: Flow 3.1 outline processor Message-ID: <1992Oct5.004727.7402@menudo.uh.edu> Followup-To: comp.sys.amiga.applications Summary: Yup, the moderator writes reviews too. How about you? Keywords: text editing, outlines, commercial Sender: amiga-reviews@math.uh.edu (comp.sys.amiga.reviews moderator) Nntp-Posting-Host: karazm.math.uh.edu Reply-To: barrett@cs.umass.edu (Daniel Barrett) Organization: The Amiga Online Review Column - ed. Daniel Barrett Date: Mon, 5 Oct 1992 00:47:27 GMT PRODUCT NAME Flow, version 3.1 BRIEF DESCRIPTION Flow is an outline processor or "idea processor" used for constructing text outlines with multiple levels of headings. Headings may then be manipulated as objects: moved up and down, moved inward (deeper) and outward, labeled, deleted, etc. This review was created using Flow to organize my thoughts. AUTHOR/COMPANY INFORMATION Name: New Horizons Software, Inc. Address: 206 Wild Basin Road, Suite 109 Austin, TX 78746 USA Telephone: (512) 328-6650 E-mail: amigamat@ccwf.cc.utexas.edu (Mark Thomas) LIST PRICE $110.00 (US). I have seen it for $61.00 mailorder. Upgrades from previous versions are available; contact New Horizons for details. SPECIAL HARDWARE AND SOFTWARE REQUIREMENTS Flow 3.1 works on all Amiga models under operating system versions 1.2 and higher. No RAM requirements are stated; however, the program itself is about 200K, so I'd guess you need 512K RAM. COPY PROTECTION None. Installs on a hard drive. MACHINE USED FOR TESTING I tested Flow 3.1 on both an Amiga 3000T (Amiga OS 2.04, 2MB CHIP RAM, 8MB FAST RAM) and an Amiga 1000 (Amiga OS 1.3, 512K CHIP RAM, 2MB FAST RAM). Some features require Amiga OS 2.0 and therefore did not work on the A1000. REVIEW Flow 3.1 is an outline processor with many features: automatic heading numbering, the ability to collapse and expand (hide and unhide) headings, search and replace, a 50,000 word spell-checker which can learn new words, auto-saving of documents, Amiga clipboard support, and an ARexx port with over one hundred commands. Flow supports multiple typestyles (bold, italics, underline), user-selectable screen resolutions and colors (all modes supported except HAM and Extra Half Brite), and powerful customization of heading labels. Outline editing is fairly simple and similar to text editing, except that the TAB and RETURN keys have new meanings. You create a heading by typing the whole thing without pressing RETURN (the lines auto-wrap for you). Pressing RETURN begins the next heading. The TAB key is used to move one level deeper (TAB) or upward (SHIFT+TAB) in the outline. For example, here is the creation of an outline, with special keypresses inside square brackets like [RETURN] and [TAB]. All heading numbering is created automatically by Flow. I. Review of Flow 3.0 [RETURN] [TAB] A. It is an outline processor [RETURN] B. It is made by New Horizons [RETURN] [TAB] 1. They also make ProWrite [RETURN] 2. Quarterback too. [RETURN] [SHIFT TAB] C. If you keep typing like this, the words will wrap around, because a heading can have as many words as you like. [RETURN] [TAB] 1. Here is a subheading. [RETURN] 2. Here is another. [RETURN] [SHIFT TAB] [SHIFT TAB] II. Now we are back at the top level of the outline. Movement in the document is done using the mouse or the cursor keys. Standard cut, copy, and paste operations are supported, and they do use the Amiga clipboard for sharing data with other programs. A dynamic column of gadgets on the left side of the screen, one for each heading, lets you select, drag, collapse/expand, and delete entire headings. Flow 3.1 has support for many new features of Amiga OS 2.0. It opens a public screen called "Flow", so you can make your other applications open their windows on Flow's screen. Right now, I am typing this review on the Flow screen with TurboText and WShell windows open on it. Flow also puts an AppIcon on the Workbench when it runs, so you can drag and drop outlines onto it and load them into Flow, and an AppMenuItem in the Workbench "Tools" menu which brings the Flow screen to the front. Finally, Flow has an option to use the standard ASL file requester. By default, Flow uses its own requester which looks like the Macintosh's. (See my requester complaints under LIKES AND DISLIKES, below.) I tested all of these features. The ARexx implementation is very comprehensive with over 100 commands. Up to ten ARexx macro names may be stored in the "Macro" menu and executed by selecting them, or by pressing SHIFT+function key. If you want to execute a different macro, the menu item "Other..." will prompt you to type in its name and arguments. It does NOT use a file requester; you must remember the macro name. The spell-checker is straightforward and easy to use. As misspelled words are encountered, you have the options of skipping, learning (putting a word into the dictionary), guessing an alternate word, and changing the word to another. The spell-checker has one major flaw: as it scans your outline, it expands (unhides) all headings, and leaves them expanded when it exits. This is terribly inconvenient and a thoughtless omission that should have been caught during beta testing. One very nice feature is the amount of control the user has over heading labels. Using a simple syntax, one may specify what kind of labels appear at each level. For example, the default formatting string is: ^I.,^A.;^n.,^a),^i) which means Roman numerals with periods, then capital letters with periods, then Arabic numerals with periods, then small letters with right parentheses, and then small Roman numerals with right parentheses. The comma is a separator character, and the semicolon indicates which labels should be repeated in deeper levels. You may include text in this formatting string. Flow may be invoked from either the Workbench or the Shell. All of the icon ToolTypes have Shell equivalents (yay!) which use the same words on the command line. Kudos to New Horizons for this consistency. IMPROVEMENTS OVER FLOW 2.0 I upgraded from Flow 2.0 to 3.1, and the improvements include: o Support for Amiga OS 2.0. o Spelling checker. o More control over screen resolution and colors. o Much improved look and feel. o ARexx port. o A few more editing commands. o Automatic heading labels. o Word counting and grammar statistics. o Postscript printing support. o Bug fixes. If you enjoyed Flow 2.0, you should DEFINITELY upgrade to 3.1. If you did not like Flow 2.0, then the choice is tougher whether the upgrade is worth it, since the underlying program is still the same. LIKES AND DISLIKES On the good side... I like the concept of "outline processors" in general. Back in 1985, I discovered "ThinkTank" for the Apple Macintosh and realized what a powerful tool it could be for organizing one's thoughts. I organized this review using Flow. My favorite feature of Flow is the extensive set of ARexx commands. An ARexx script can access virtually every capability of the program. In addition, the manual and the supplied examples are both very good. In particular, New Horizons supplies an example outline on disk which contains an index of every article in every Amiga magazine for the past several years! What a great idea for an example -- it's not only good for testing the program but also a good reference for Amiga users. On the bad side... I am afraid that I have a long list of dislikes about Flow 3.1. In general, Flow has some very powerful features but is missing some important, basic capabilities. I have organized my complaints into several categories. Non-standardization o The file requester is non-standard. Flow does give you the option of using the standard ASL file requester instead, but Flow's default colors make this file requester look terrible. The gadgets blend into the background so you can't see their borders. This "integration" of the ASL requester feels like a hack. Also, the default file requester uses the word "Back" instead of the more standard "Parent". o Flow does not support alternate system fonts. It uses the "Topaz 8" font regardless of how you set your Font preferences. o Under the default colors, ghosted gadgets appear totally black in both foreground and background, so you can't see them at all. This includes scrollbars, front/back gadgets, etc. The effect is strange and forces you to guess sometimes just what gadget you are about to select. o Typing "Flow ?" in the Shell does not produce a usage message. It should. Graphic user interface o Repeated cursor movement is pitifully slow, even on a 68030 machine. If you hold down the right cursor key, for example, the cursor moves at a rate of 5 characters per second. And I have my key repeat rate set to be quite fast using the Input preferences. The problem may be that Flow updates too much of the screen during movement. For example, the end-of-page dotted line redraws itself on every cursor movement. I can't imagine why. o When requesters disappear, they leave a gaping hole (rectangle) in the window for a very noticeable amount of time, even on a 68030 Amiga. You can avoid this problem by turning on the "SmartWindows" option, but this slows down the window update speed in general. o Some requesters will immediately exit if you press RETURN while editing the last field. This is very inconvenient if you do not fill in the fields strictly from first to last. Instead, pressing RETURN in the last gadget should activate the first gadget, and clicking "OK" or "CANCEL" should exit. o The "Screen Colors" tool for changing the program colors is easily THE worst I have seen in any Amiga program. First, you are shown the current colors, and you click on one. Does this let you edit it? Nope -- now you have to click on "Change". This removes the requester and brings up a SECOND requester that lets you edit JUST this one color. It has gadgets for both RGB and HSV (Hue/Saturation/Value) editing, but the gadgets are different for the two methods! RGB uses vertical arrow up/down gadgets with numeric values, and HSV uses horizontal sliders. Once you are done, you click "OK" to get back to the FIRST requester, and you are ready to repeat the process for the next color. This scheme is weird and inefficient; I've never seen anything else like it. o The "Colors" requester has no way to duplicate the Workbench colors quickly. Many other programs have this feature. o Certain user interface options may be set when Flow is first invoked but are impossible to change without exiting the program. These include screen resolution, number of bitplanes, and choice of file requester (ASL or internal). o Flow was obviously never tested in LORES mode. Many gadgets in requesters are incorrectly displayed on top of each other. Other user interface issues o Typing "Flow myfile", if myfile does not exist, should cause Flow to create myfile. It doesn't -- Flow instead beeps at you and complains that myfile doesn't exist. What good is that? This also happens if a nonexistent file's name is given in the "Open..." requester. I reported this to New Horizons over three years ago. o If you give Flow an illegal command-line option, it does not complain. It simply ignores the illegal options. This is a matter of taste, but personally I'd like to be told when I make a mistake. ARexx port o In a program this similar to a text editor, there should be a way to bind ARexx commands to every single keystroke, not just menu items and function keys. This is my biggest gripe with the program, and the main reason that I don't use it very often any more. Why should I have to learn a whole new set of keystrokes when the program has an ARexx port crying out to be used? o If you want to execute an ARexx macro other than the 10 you can store in the menu, you must memorize its name, because selecting "Other..." brings up a simple string gadget. It should bring up a file requester instead!! o The files for the 10 ARexx macros in the "Macros" menu must be in the current directory in which you invoke Flow. This allows you to have different sets of macros in each directory. However, the names of the macros in the menu are stored GLOBALLY! Therefore, every time you invoke Flow in a different directory, it can't find your macros. This is IDIOTIC. There should be a standard directory for macro files where Flow can always find them. In fact, Flow already provides the directory FLOW: for locating the spelling dictionary, so... why not?? o I hope New Horizons will provide a method for iterating through all headings at a given level or at all levels. "CursorUp" and "CursorDown" commands are too primitive; give us "NextHeading" and "PrevHeading", with the option of staying within the same heading level or not. Editing o Unlike every other Amiga text processing program I have used, Flow uses a cursor that sits BETWEEN two characters instead of ON TOP of a character. (The Mac uses the "in between" cursor too.) I dislike this kind of cursor and wish there were an option to change it. In addition, the cursor is not visible in inactive Flow windows; so if you have multiple Flow documents open, you can't see the cursor locations in your other documents. o For some reason, I spend a lot of time deleting blank headings. Pressing RETURN always begins a new heading, and I am used to pressing RETURN at the end of each line in my text editor. So, I have to delete the blank entry I just made, cursor up, and continue editing the current heading. I'd like to see an option to make RETURN act simply as a line-breaker, not a heading-starter. o By continually expanding and collapsing headings, I find my position in the document getting pushed slowly downward. I'd like to see Flow get smarter about repositioning the page when headings get collapsed. o There is no way to collapse a heading that is not currently visible on the screen. Thus, if you are editing near the bottom of a heading with many subheadings, you must scroll or search upward to the heading before you can collapse it. o There is no convenient way to expand or collapse every heading at once, unless you happen to make one global heading and put everything else beneath it. General functionality o There is no "undo" command. This is a serious deficiency in a program that lets you delete large chunks of your outline with 2 simple operations (click on one gadget and press DELETE key). o The SAVE file requester lets you choose the format of the file: either "Normal" (Flow's internal IFF format) or "text only." However, this setting is not remembered between saves; you have to reselect it every time you save the file. I reported this problem to New Horizons over three years ago. o There is no widow/orphan control. That is, a heading can appear as the last line of a page, and all its subheadings appear on the next page. Flow uses a simple "number of lines" count to determine page breaks. o There is no way to control spacing between lines in the printout. Extra features o The spell-checker expands all your headings and leaves them expanded after it exits. It should return the outline to its original state. o Although Flow supports alternate typefaces (italics, bold, underline), it is not possible to use two typefaces within the same heading. However, it IS possible to TRY to change typefaces inside a heading, which feels weird to me. For example, you can highlight a region of text and then select "Bold" from the menu. My intuition says that this should change the region to boldface, but it changes the entire heading. I realize that my example does not "prove" anything -- after all, Flow is acting correctly when it boldfaces the entire heading. However, this sequence of events has an outcome which is "unnatural" according to my intuition. If headings are the only units that can be boldfaced, then boldfacing should be allowed only when the HEADING ITSELF is selected (e.g., using the gadget in the left column). o The "Grade Level Readability" index cannot be taken seriously. It is supposed to estimate how readable a document is. My review outline got "18.1" -- what does that mean? Also, I opened a document and typed the word "indivisible" and got a readability index of 40.4. New Horizons should delete this feature and save itself some embarrassment. To summarize my complaints: I am puzzled by the priorities of Flow's designers. Flow has some unusual but "nifty" features like automatic date insertion, random sorting of lines, and the Grade Level Readability index. At the same time, it lacks more common features like arbitrary keybindings (found in every text editor nowadays), boldfacing of individual words, an "Open..." command that can handle nonexistent files, and a standard file requester. COMPARISON TO OTHER SIMILAR PRODUCTS If you have a strong need for an outline processor, I believe that Flow is currently your only commercial choice on the Amiga. The only other commercial product I know of that supports (crude) outlining is Oxxi's TurboText text editor, which allows parts of the file to be hidden and unhidden selectively. However, TurboText does not have direct support for multiple levels of headings. Flow is clearly more powerful for outlining. [NOTE: I have since learned of a product called "Thinker" which is also a commercial outline processor for the Amiga. It is made by Poor Person's Software. - Dan] In the world of Amiga freely distributable software, we find 'Liner (Fish Disk 451, shareware, by Dave Schreiber) and GNU Emacs 1.25 (available on various FTP sites, freely distributable under the GNU Public License, ported by David Gay). 'Liner is like a stripped-down Flow with a few features and an ARexx port. Flow is far more powerful, but 'Liner is simpler and only $10.00 (US). GNU Emacs is a full-fledged text editing environment with thousands of features. One of those features is an outlining mode which is fully customizable by the user (if you feel like programming in a LISP-like language). In my opinion, it would be ridiculous to use GNU Emacs only for its outlining features. If all you need is an outliner, Emacs is overkill. BUGS I found a bunch of other bugs in version 3.0, reported them to New Horizons, and they were all fixed in 3.1. Great job, New Horizons! In 3.1, I found only 1 minor bug: when using the ASL file requester, Flow does not properly refresh its screen. I can drag the requester around the screen, effectively erasing all the text and gadgets. SUPPORT I have contacted New Horizons by e-mail several times. Replies usually came within a few days, although some took a few weeks. Eventually, they responded to all my mail. They also accepted my bug reports by e-mail. I am happy to see that New Horizons has a representative who reads USENET News and responds to users' questions there. WARRANTY Physical media (disk and manual) are warranted for 90 days, and replaced without charge. CONCLUSIONS Flow 3.1 is a paradox. On the one hand, it looks great, is quite stable, has lots of features, and does what it claims to do. On the other hand, it lacks some important, basic functionality. Flow is especially disappointing when I realize that the product has been on the market for over three years. From using the program, I get the feeling that Flow was designed by two different people: one experienced Amigan, and one total computer novice... and that the novice made too many design decisions. If you need an outline processor, Flow is currently the best one for the Amiga. Unfortunately, it needs an overhaul before I'd consider it a good program. On a scale of 1 (terrible) to 10 (truly excellent), I rate Flow a 5. COPYRIGHT NOTICE Copyright 1992 Daniel J. Barrett. All rights reserved. This review may be freely distributed provided it is distributed unmodified and in its entirety. It may not be published in any commercial publication without the written permission of the author. --- Daniel Barrett, Moderator, comp.sys.amiga.reviews Send reviews to: amiga-reviews-submissions@math.uh.edu Request information: amiga-reviews-requests@math.uh.edu General discussion: amiga-reviews@math.uh.edu