home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-03-19 | 45.3 KB | 1,018 lines |
- Introduction
-
- This file is a very abbreviated version of the Thinker manual.
- It is intended only to help in using the demo version of
- Thinker. The Demo version of Thinker cannot save any changes
- to files, does not import or export ASCII, nor does it print.
- Creating a new file will write on your disk and will in fact
- create a new Thinker document with a single statement
- (The copyright notice). This version of Thinker will only
- handle documents under 30,000 bytes in size.
-
- ******************************************************************
-
- Thinker is available for $59 until March 31, 1989 and
- $99 thereafter from:
-
- Poor Person Software
- 3721 Starr King Circle
- Palo Alto, CA 94306
- (415)-493-7234
-
- Source for Tinydraw is available on request at no charge.
-
- *******************************************************************
-
- Thinker can trace its heritage all the way back to Doug
- Englebart's work at SRI's Augmentation Research Laboratory.
- By combining elements of text processing, outline processing,
- and hypertext, Thinker becomes an Idea Processor that embodies
- the basics of Doug's ideas for augmenting the human intellect.
- The future of Thinker includes links to sound files, WYSIWYG
- print formatting, use of the Amiga Clipboard, and more.
-
- What is HyperText?
-
- Footnotes are a form of HyperText. Within the body of the
- text is a directive to look somewhere else in the text for
- more information. With footnotes the directive is a
- footnote number while in HyperText the directive is in the
- form of a character string that "names" another section of
- the text. In order for HyperText to work the text is
- divided into sections and each section has a label.
-
- One often encounters this form of textual link when a phrase
- like "See Chapter 2, section 1" appears in the text. This
- type of link is good but can be carried further. Imagine
- that each paragraph in a document had a label that described
- the topic discussed in the paragraph. Now one could
- encounter the phase "See the section <correct use of the
- passive voice>" which would take you directly to the
- paragraph on passive voice. However, where is that
- paragraph? What Chapter? What Page?
-
- When the document is online and being accessed via a
- HyperText processor, one simply points the mouse at the
- phase <correct use of the passive voice> and asks to see
- that paragraph. Whether it is in chapter 10 or 2 is of no
- concern to the reader, the HyperText processor will find it
- and present it to the reader.
-
- HyperText documents do not have to be read linearly like a
- book. One can begin in the section with the most interest
- and follow the links around the document to explore the
- subject. The creator of the HyperText document had only to
- attach descriptive labels to the various sections of the
- document.
-
- What is Hierarchical Text?
-
- Hierarchical Text is an extension of outlines. Outlines are
- the arrangement of topics in subordinate relationships.
- Rain and snow are two examples of precipitation and they are
- properly subtopics of precipitation in an outline of a paper
- on weather.
-
- If the idea of an outline is extended to an arrangement of
- ideas in subordinate relationships it becomes Hierarchical
- Text. Ideas are paragraphs or groups of paragraphs and a
- paragraph on precipitation might have subordinate paragraphs
- on the different kinds of precipitation that one might
- expect to find.
-
- How Thinker combines HyperText and Hierarchical Text
-
- Thinker is a Hierarchical Text processor with HyperText. A
- Thinker document is made up of a collection of paragraphs
- (referred to as "statements" or "branches" in this manual)
- arranged hierarchically and containing textual links to each
- other. Each statement in a Thinker document can have a
- label and can be referenced by a textual string (a link)
- that "names" that label.
-
- A statement that begins with "(" has a label, and the label
- is the string of non-punctuation characters between the
- first "(" and the closing ")" at the beginning of the
- statement. A link in the text consists of the
- non-punctuation characters between "<" and ">" characters
- anywhere in the text. When the label is a single word, the
- link to it can be expressed without the "<" and ">"
- characters. Thus, each word in a Thinker document is a
- potential HyperText link to statement somewhere in the
- hierarchy of statements that make up the document.
-
- To expand the flexibility of Thinker, a link may contain the
- name of a Thinker document other than the one in which the
- link is found. The document name is separated from the
- label by a comma. Thus, <Thinker:example,link> is a link to
- the section labeled "link" in the Thinker document called
- "example" on the disk named "Thinker".
-
- When a statement has subordinate statements it is called a
- branch. Thinker allows the manipulation of a document by
- moving, copying, and deleting statements and branches. When
- a branch is moved, all the subordinate statements are moved
- as well.
-
- Display parameters control the format of the text on the
- screen. Thinker can be instructed to display only the first
- line of each statement and give the appearance of a simple
- outline. By controlling the depth of the outline visible,
- the user can actually "see" very large portions of the
- document at one time. When the document is manipulated
- while viewing it in outline form, all of the text that is
- part of the document is moved when the visible portions are
- moved.
-
- What can Thinker "link" to?
-
- A HyperText link can link to one of three things: 1) A
- Thinker document, 2) An IFF picture file which can be
- displayed in a new window (the picture is thus compressed in
- size and colors) or a separate screen, or 3) any Workbench
- application, in which case the application is launched in
- its own window and runs as a separate task. If a project is
- to be launched, there MUST be a project icon. If an
- application is to be launched, it MUST have a Tool icon.
-
- The ability to link to other Workbench applications makes
- Thinker into a HyperMedia product. Drawings, sound
- applications, database applications, word processing
- applications are all possible links in a single Thinker
- document.
-
- How does one interact with Thinker?
-
- All interaction with Thinker is via the Mouse and Menu
- system of Intuition. There are no keyboard commands.
- Gadgets are available for common commands and menus are
- available for the complete command set. Requesters are used
- extensively to provide a highly responsive user interface.
- These requesters always appear directly under the mouse
- cursor with the cursor positioned over the most common
- choice.
-
- Text on the screen is modified as in many word processors.
- The cursor is positioned in front of text that is to be
- modified and typing is always in "insert" mode. Text is
- "selected" by sweeping the cursor over a block of text while
- holding the left mouse button down. Selected text can be
- "cut" from the statement and "pasted" elsewhere or simply
- replaced by typing. Thinker has "search" and "replace"
- functions to complete the editing capabilities.
-
- Thinker will print a document or prepare a text file for
- manipulation by a word processor or typesetting program.
- Thinker can also import text prepared by a word processor
- into a Thinker document.
-
- Thinker appears deceptively simple by design. The fact that
- labels and links are merely parts of the text eliminates
- much of the complexity associated with large numbers of
- obscure commands. However, one should not be fooled by the
- appearance of simplicity. The combination of Hierarchical
- text, Hypertext, and Word Processing functions makes Thinker
- a powerful Idea processor. Take the time to learn Thinker
- by working with the tutorial project (EXAMPLE) found on the
- Thinker distribution disk.
-
- NOTE: Thinker uses a lot of memory. Lack of memory on CP/M
- and PC DOS systems is what limited Thinker on these machines
- to a mere toy. One of the uses of memory is to cache blocks
- of documents in memory to avoid disk access. Poor Person
- Software recommends the use of a Floppy Accelerator such as
- Facc II by ASDG. The cache available in Thinker requires a
- good deal more memory than Facc II to be as effective in
- reducing disk access. Do not attempt to use Thinker without
- either enabling Thinker's read cache (see menus explained
- under Options) or using a program like Facc II.
-
- Definitions
-
- The terms used in describing a Thinker document have other
- meanings in other environments. In order to clarify the
- following discussion of Thinker, the most common Thinker terms
- are defined here.
-
- Anchor
-
- The statement that appears at the top of the window is
- sometimes referred to as the anchor statement of the window.
- The user navigates around in a document by changing the
- anchor statement. The anchor statement is changed with Jump
- commands.
-
- Branch
-
- A Branch is a statement with subordinate statements. When a
- statement is inserted into a document, it may be inserted at
- any level relative to the other statements in the document.
- A branch is a statement at any level that has statements
- below it. A branch may have a branch subordinate to it. A
- Statement with no subordinate statements is sometimes
- referred to as a Branch.
-
- Clipping Level
-
- Clipping level refers to the number of document levels that
- are displayed in a window. A window with a clipping level
- of 2 will show only the two highest level statements.
- Clipping can be used to view a hierarchical document at
- different levels of detail. The document can be manipulated
- with clipping levels that exclude much of the document from
- the screen. All of the invisible text is moved with the
- visible text.
-
- The clipping level can be chosen for the entire document or
- for single branches. The Clip gadget at the top of the
- screen or the Clip menu sets the clipping level that applies
- to the document as a whole. "+" or "-" gadgets in front of
- statements manipulate the clipping level applied to the
- single branch.
-
- Group
-
- A group is a sequence of branches at the same level.
-
- Jump
-
- When the anchor statement of a window is changed, a
- different portion of the document becomes visible in the
- window. This is referred to as a jump. Jumps can be made
- relative to a statement visible on the screen or relative to
- a statement named in a link. It is also possible to jump to
- picture files and Workbench applications.
-
- Label
-
- Any statement in a Thinker document may have a label. A
- label is a name by which the statement is known and is like
- a key in a file. Thinker recognizes a statement that begins
- with "(" as its first character as being a labeled
- statement. The label is all of the non-punctuation
- characters between the initial "(" and a trailing ")".
- Labels in a Thinker document must be unique. The case of
- letters in a label is not significant and only the first 19
- non-punctuation characters are significant.
-
- Level
-
- Statements are arranged in a hierarchy. The most important
- statements are at level 1. Level 2 statements are
- subordinate to level 1 statements as in an outline. Thinker
- does not limit the number of levels in a document but the
- display on the screen will be less than satisfactory for
- more than about 30 levels.
-
- Link
-
- A "link" is the appearance of a label in the text. A link
- is either a single word or a string of characters delimited
- by "<" and ">". A link consists of two parts. Part one is
- optional and names a project, Thinker document or file.
- Part two is separated from part one with a "," and names a
- branch. Picture file links consist of only the file name
- and the comma as in <Thinker:art/mirage,>. Links may by
- typed into requester strings as the address of statements
- when certain operations invite the user to designate a
- statement. Links typed into requesters do not have the
- surrounding "<" and ">" characters. Links can be activated
- by putting the cursor over the link in the text and double
- clicking the left mouse button or by using the Jump Link
- command.
-
- Links may designate labeled statements in the same or
- different Thinker document, IFF picture files, or any
- Workbench application such as a music player, paint package,
- or CAD application. Use the Project name or Tool name in
- the project portion of a link followed by a comma to specify
- a link to an application.
-
- Mark
-
- Thinker sometimes invites the user to designate a statement
- as the target of an operation such as "delete" or "move".
- The user may elect to mark the statement on the screen or
- type in a link that designates the statement. A statement
- is marked by moving the Pointing Cursor (a hand) such that
- the hand points to the statement and pressing the left mouse
- button.
-
- Origin
-
- The first statement in a document is referred to as the
- origin statement. The origin statement may be moved or
- deleted in which case some other statement becomes the
- origin statement.
-
- Statement
-
- A statement is a block of text. Statements are like
- paragraphs in many word processing programs. Thinker does
- "word-wrap" within a single statement but not across
- statements. Text selection (by sweeping the cursor over
- text with the left mouse button held down) is limited to
- text within a single statement. Statements may contain up
- to 2000 characters of text including standard and extended
- characters from the Amiga keyboard. The <ESC> and carriage
- return characters are also allowed.
-
- View Specifications
-
- The appearance of the text in the window is controlled by
- three parameters that together are called the view
- specifications. These parameters are "Clipping level",
- "Spacing", "Number of Lines" and are each explained in the
- Options Menu section.
-
- Window
-
- Only a small portion of a Thinker document can be displayed
- on the screen at any time. Thinker uses Intuition windows
- to view portions of a document. Up to 8 windows may be open
- at any time. Each window may display a portion of a
- different document or different portions of the same
- document.
-
- Getting Started
-
- Running from the CLI
-
- The command THINKER [PROJECT-NAME] is used to start Thinker
- from the CLI. If a project-name is specified, the Thinker
- window is automatically positioned at the origin of the
- document. If the project name specified does not exist or
- is not a Thinker document or IFF picture file or if no
- project-name is specified then the Thinker window is blank
- and the Jump Link command or Create New command must be used
- to open a Thinker document.
-
- Running from the Workbench
-
- Double clicking the Thinker Icon will initiate Thinker with
- no active Thinker document (a blank window). The Jump Link
- command or Create New command must be used to open a Thinker
- document. If a document Icon is double clicked then Thinker
- is started with the window positioned at the origin of the
- document.
-
- Thinker terminates when the last window is closed.
-
- Thinker Documents
-
- Thinker documents are not always meant to be read linearly.
- While this manual was created using Thinker, many uses of
- Thinker take more advantage of the Hypertext and Hierarchical
- text features. A skilled Thinker user creates documents with
- a definite flavor. These documents do not always read well
- when flattened and printed on paper and are meant to be read
- online.
-
- Outline nature of Thinker documents
-
- If a Thinker document is viewed with a clipping level of 1,
- only the first level statements (often these statements are
- topic names or section headers) will be shown. It is rare
- but not impossible to have blocks of text at this level. An
- executive summary is presented with the clipping level set
- at 2. As the clipping level is increased, more and more
- details are revealed. If Thinker is used to design a
- program one would expect to find code fragments or pseudo
- code at the deepest levels of the document.
-
- Hypertext features
-
- Information is only presented once. A reader should be able
- to start reading a Thinker document at the topic of most
- interest. All references to terms that require a definition
- in the context of the document should always have a link to
- the section of the document where the term is defined. The
- fact the Thinker will treat any word as a link means that a
- Glossary section could define all terms and contain links to
- the sections that provide further clarification.
-
- When a new term is encountered, the reader double clicks on
- the word to open a window over the Glossary section defining
- that term. If there is more information available then the
- Glossary entry will contain a link to the section of the
- document where the term is introduced and described in
- detail. Double clicking on the link can move the Glossary
- window to the detailed information.
-
- These links make Thinker ideal for online help where the
- reader can go directly to the section of interest and still
- be able to locate quickly all the pertinent information.
-
- Planning a book
-
- One possible use of Thinker involves coordinating all the
- details of a novel. One technique that might be of value is
- to have several major sections of a Thinker document for
- various aspects of the planning process. One section would
- have a labeled branch for each character in the book. Other
- sections would describe historical events of interests and
- descriptions of each location. Each of these sections would
- have labeled statements for each detail.
-
- The section of the document that describes the story line
- (plot) of the book would contain links to the sections
- containing detailed information. The plot can be reviewed
- without having to wade through details that might confuse
- the issues. As needed, each reference in the plot to
- details about characters, scenes, events, etc could be
- checked by jumping to the section of the document where this
- information is found. Multiple windows help organize the
- thought process.
-
- Organizing picture files
-
- Since links may be to IFF picture files, one use of Thinker
- might be to build a catalog of picture files. Each section
- of the document would have a first level statement with a
- label indicating the type of pictures indexed. The
- subordinate statements would contain descriptions of the
- picture and a link to the picture file. Pictures are
- located by jumping to the section of the document with the
- descriptions for the correct type of picture and then double
- clicking on the link to the correct picture.
-
- Thinker documents as databases
-
- Labeled statements in Thinker documents are much like
- indexed records in a database. There is a great deal of
- flexibility above the typical database, however. Records
- are not a fixed format. Records can contain a variable
- number of pointers to other records. Records can be part of
- a document meant to be read.
-
- Using Thinker to write is like writing inside a database as
- references can be checked with the click of a mouse button.
- Using Thinker is like having a completely free form database
- with references to applications, pictures, and documents.
-
- Thinker as a desktop organizer
-
- A desktop document can be used as an alternative to the
- Workbench. Within the document are labeled statements
- covering various working task areas such as Letter Writing,
- Programming, Finance, etc. Subordinate to these statements
- are labeled statements for each task in that area. These
- statements describe the task and may include sentences
- describing the progress of the task. Finally, there are
- links within the statements that name the Project or Tool
- used to work on the task. A description of a program might
- contain the name of the source for the program so that you
- can link directly to the source and work on it within your
- favorite editor. Other statements can link to other
- Projects and Tools, any of which can be launched in
- multitasking mode.
-
- Viewing a Document
-
- A linear document is usually viewed by scrolling a window over
- the document. A Thinker document is viewed by navigating
- around the document using the view specifications to control
- what is displayed on the screen. There are three view
- specifications that control the display.
-
- Clipping Level
-
- The depth of the hierarchy that is displayed is determined
- by the Clipping level. A clipping level of 1 will show
- only the first level of the hierarchy (the major topics)
- and as the clipping level is increased more details are
- shown.
-
- When the choice of clipping level causes statements to be
- hidden from view, a "+" character appears in front of the
- branch that has hidden subordinate statements. Selecting
- the statement "+" gadget will cause Thinker to display the
- first level of hidden statements. The clipping level is
- increased by one for the selected branch only.
-
- When subordinate statements are displayed as a result of
- selecting the statement "+" gadget, the "+" gadget is
- changed into a "-" gadget. Selecting the statement "-"
- gadget will cause Thinker to hide the subordinate
- statements.
-
- If you want to find a particular area of the document and
- you don't know the label that names it, you can begin with
- a clipping level of 1. Use the statement "+" gadgets to
- selectively increase the clipping level in the area of
- interest.
-
- Number of lines shown in each statement
-
- The document can be viewed as an outline by setting the
- display to show only the first line of each statement.
- This setting often speeds the search for a particular
- section significantly as more of the document is shown on
- the screen at one time.
-
- Spacing between statements
-
- Once the correct section of the document has been located,
- the spacing is adjusted for either maximum screen content
- (0 lines between statements) or ease of reading (1 or more
- lines between statements).
-
- One views a non-linear Thinker document by moving the window
- to particular places in the document with the Jump command.
- Jumping can be done relative to a statement or via a link.
- For each of the Jump commands listed below it is necessary to
- establish the statement relative to which the Jump takes
- place. Most Jump commands require that the designated
- statement be Marked by moving the Marking Pointer over the
- statement and pressing the left mouse button. For some Jumps
- the label of the statement may be typed into the requester or
- marked on the screen instead. For Jumps that allow the
- designation of a labeled statement, a requester appears with
- two choices.
-
- Mark
-
- If you select Mark by moving the pointer over the word
- Mark and pressing the left mouse button, the pointer will
- change into a hand. Move the hand so that the finger
- points to the portion of the text on the screen that
- represents the name of the designated statement (a link).
- This can either be any word in the text or a string
- between the "<" and ">" characters. Mark the link by
- pressing the left mouse button.
-
- String Gadget
-
- If there is no string on the screen that represents the
- link to the designated statement and you know its label
- name, you can simply type the label name into the string
- gadget. The string gadget is already active so you do not
- need to move the mouse or press any buttons. Do not type
- the "<" or ">" that delimit a link in the text. The
- <carriage return> key signals the completion of typing.
-
- The following Jump commands are available either through the
- Command Menu, Jump sub-menu or by selecting the Jump gadget at
- the top of the screen. In all cases the result of the Jump is
- to make the designated statement the anchor of the current
- window, the anchor of some other open window, or open a new
- window with the designated statement as its anchor.
-
- Mark
-
- Some statement on the screen is chosen by moving the
- marking pointer over the statement and pressing the left
- mouse button.
-
- Link
-
- The designated statement is not on the screen and either
- its label is known or a link to the statement is on the
- screen. The label of the statement can be typed into the
- string gadget, the marking pointer can be moved over a
- link to the statement on the screen and selected with the
- left mouse button or a file requester can be brought up to
- scan for Thinker documents or workbench applications. See
- the section titled File Requester Explained for an
- explanation of how to use this requester.
-
- There is a short cut to doing a Jump Link. Any time the
- left mouse button is "double clicked" an implicit Jump
- Link (Mark) command is executed with the link being the
- character string under the cursor. If the cursor is
- between "<" and ">" characters, then the delimited string
- is used as the link. If no "<" and ">" characters appear
- on the line then the word under the cursor is used as the
- link. These are the same rules for locating the link on
- the line when Mark is selected on a Jump Link command.
-
- Return
-
- The last 6 of 16 possible previous locations in the
- document are summarized in a requester. Select the
- designated statement from the selection list in the
- requester with the mouse. The first portion of the string
- shown in the requester is part of the project name
- (between "<" and ">").
-
- Forward
-
- This is a Jump to the last statement on the screen. Jump
- Forward can be used repeatedly to scroll forward in a
- Thinker document.
-
- Up
-
- Once the statement has been marked with the Marking
- Pointer, the window is moved to the statement of which the
- marked statement is subordinate.
-
- Down
-
- This Jump is like Jump Up except that the window is moved
- to the next statement one level deeper in the hierarchy.
- This is more likely to be useful if the resultant Jump is
- to a level deeper than the current clipping level (toward
- more details).
-
- Preceding
-
- The Jump is to the statement that precedes the marked
- statement at the same level. Note that if the marked
- statement is the first statement in a group that is
- subordinate to some statement, the Jump does not complete
- as there is no statement preceding the marked one at the
- same level.
-
- Succeeding
-
- The Jump is to the statement that follows the marked
- statement at the same level. If the statement marked is
- the last statement of a group subordinate to some
- statement, the Jump does not complete as there is no
- statement following at the same level.
-
- Next
-
- The Jump is to the statement that follows the designated
- statement regardless of level. Jump Next is a scroll
- forward.
-
- Back
-
- The Jump is to the statement that precedes the designated
- statement regardless of the level. Jump Back is like a
- scroll backward one statement.
-
- Origin
-
- The Jump is to the origin statement of the document.
-
- Editing
-
- Text within a statement is edited much like text in a standard
- word processor. Of course any editor is a bit fascist and
- Thinker is no exception.
-
- The cursor is positioned by using the mouse or cursor keys.
- The cursor keys move the cursor within a statement, between
- statements, and will cause statement scrolling forward or
- back. When the mouse is used to position the cursor, the left
- mouse button is used to mark the place in the text.
- Subsequent typing inserts characters at the cursor location.
- "Backspace" deletes a character to the left of the cursor and
- moves the cursor to the left. "Delete" deletes a character to
- the right of the cursor and does not move the cursor.
-
- All printable keyboard characters are allowed in text
- (including alternate characters). In addition the <ESC>
- character and <CR> character are allowed. The <ESC> character
- is useful for imbedding printer commands in text. The <CR>
- (carriage return) character is used in formatting tables as a
- single statement rather than as a group of statements. The
- <CR> character is visible as "~" and causes the cursor to move
- to the next line of the statement in the first column of the
- statement. A <New Line> character is put into the text.
-
- A block of text may be selected by holding down the left mouse
- button while moving the cursor over the text on the screen.
- Only text that is totally within a single statement can be
- selected in this fashion. Once selected, the text can be
- "Cut" from the statement and "Pasted" at some other location.
- Selected text is replaced by any typed characters and the
- selected text is forever lost.
-
- Undo is supported with the "Discard Modifications" menu
- selection. All modifications including structural changes are
- deleted. The user may select "undo points" by using the
- "Apply Modifications" menu selection. In fact no changes are
- recorded until Apply Modifications is selected. There is a
- reminder warning presented if the user attempts to leave
- Thinker without Applying Modifications. The requester gives
- the opportunity to Apply or Discard the modifications.
-
- Search and Replace operations are selected from the Edit menu.
-
- (manipulating the structureManipulating the Structure
-
- Statements in a Thinker document may be moved within the
- hierarchy, moved to another document, copied to other places
- in the same document, or copied to other documents or deleted.
- The movement, copying, or deletion of statements does not
- require that the entire structure to be moved, copied or
- deleted be visible on the screen as parts of the structure may
- be obscured by the selection of viewing specifications.
-
- It is the ability to manipulate whole structures of the
- document that make the hierarchical text such a powerful tool.
- The viewing specifications can be set to view the document in
- its outline form (set the number of lines for each displayed
- statement to 1) and the entire document can be restructured.
-
- Move and Copy and Delete options are available for individual
- statements, branches, and groups of statements or branches.
- In all cases a sequence of requesters walks the user through
- the operation. Some of these requesters have a "Prev" or
- "Previous" gadget which will recall the previously typed
- string gadget.
-
- New statements can be Inserted into the document at any level.
- A double click of the menu button shortcuts the insert
- process.
-
- Insert
-
- Selecting the Insert gadget (or menu selection Insert
- Mark) presents the Marking Pointer. A new statement will
- be inserted after the statement marked. A confirmation
- requester allows the user to select the level relative to
- the marked statement. Remember that Up and Down refer to
- the physical subordination of statements as viewed on the
- screen.
-
- Double clicking the right mouse button with the cursor
- over a statement is eqivalent to selecting Insert and
- marking a statement.
-
- Menu selections Insert After, Insert Down, and Insert Up
- insert a statement relative to the statement with the
- active typing cursor without the confirmation requester or
- any mouse action.
-
- Delete
-
- The user is presented with a requester to select either a
- Branch or Group delete. Once the choice has been made,
- the user is walked through the selection process. Each
- time that a statement is to be designated the user is
- given the choice of Marking the statement with the Marking
- Pointer or typing in the label name of the statement. The
- designated statement or group need not be visible on the
- screen nor even in the same document that is visible on
- the screen.
-
- However, if the Mark option is used for both the beginning
- and end of a group, both ends of the group must be in the
- same window.
-
- Copy
-
- The user is presented with a requester to select
- Statement, Branch, or Group copy. Once selected, the user
- is walked through the selection process.
-
- Copy Group is like Delete Group in that both the begin and
- end statements must be marked in the same window, however,
- either the end or beginning may be specified by typing the
- label in the string gadget.
-
- The destination of the copy may be marked in the same or
- another Thinker window. The destination of the copy may
- also be in another project that is not visible (as in
- delete.)
-
- There are some restrictions on the destination of a copy.
- A Branch or Group may not be copied to a place within the
- Branch or Group as this copy would never complete.
-
- Move
-
- Move is almost like Copy. In fact Move may be thought of
- as a Copy followed by a Delete.
-
- A Tutorial Example
-
- The first part of the tutorial will walk the user through the
- process of building a Thinker document. The second part of
- the tutorial makes use of an existing Thinker document called
- "example".
-
- The Thinker document "Example" is a tutorial that leads the
- user through a short example of using Thinker to view and
- manipulate a document. Duplicate the EXAMPLE document using
- the "Duplicate" option of the "Workbench" menu before trying
- the tutorial. If you want to recover the original EXAMPLE
- document you can discard the EXAMPLE icon and "Rename" the
- "copy of example" icon.
-
- Start the first part of the tutorial by double clicking on the
- Thinker icon. This will start the Thinker program and bring
- up a window with the basic gadgets and menus but will have no
- document displayed. At this point we might jump into some
- existing document or create a new document. One would jump
- into an existing document with the Jump Link command and
- create a new document with the Create New menu selection (in
- the Project menu).
-
- As an example of jumping into an existing document, there is a
- section in the "example" project that explains the format of a
- link. The label on this section is "link". To jump to that
- section, begin by selecting the Jump Link command (either from
- the menu bar or by selecting the "Jump" gadget at the top of
- the window and then selecting the "Link" gadget in the Jump
- Requester.) Next, type in the string "example,link" (without
- the " marks) followed by typing the "RETURN" key. Finally,
- select the "This Window" gadget in the Jump Confirmation
- Requester.
-
- Typing the string "example," (note the comma but no label
- typed after the comma) would jump to the beginning (origin) of
- the document "example".
-
- Whether or not you take the diversion suggested by the
- previous paragraphs, you create a new Thinker document by
- selecting the "Create New" menu option from the "Project"
- menu. Do so now. Note that a requester pops up inviting you
- to enter a project name. The first part of the requester is
- filled in with the name of the current Drawer. Since you
- double clicked the Thinker icon directly, this Drawer name
- will be the Drawer in which the Thinker program was found.
- The Requester is already activated so simply type in the name
- of your new project. In this example we use the name
- "tutorial". If you entered the name "example" you will be
- greeted by a requester asking if you want to replace the
- "example" project that already exists. You should respond by
- selecting the CANCEL gadget and begin again typing the name
- "tutorial".
-
- After some disk activity the window will display the new
- document (note the change in the window title) and the
- document will contain a single statement (a Copyright notice).
- The first thing to do is to replace the Copyright notice with
- the first statement of our new document. You might try using
- the Delete (Branch) command but you will find that you cannot
- delete the only branch in a document.
-
- Move the pointer over the Copyright notice and observe that
- while the pointer is within the statement it is shaped like a
- cursor. Move the cursor shape to the very beginning of the
- statement and press the left mouse button. While holding down
- the left mouse button, move the cursor to the end of the
- statement. Notice that the selected text becomes highlighted
- as you move the cursor. When you have the entire statement
- selected, release the left mouse button. Type in the string
- "What I did last Summer" (do not type the RETURN key). Notice
- that the selected text is removed and replaced with the typed
- string.
-
- Now we are going to add some statements. This initial
- document will look a great deal like an outline. Remember
- that any statement you type could be as long as 2000
- characters and fill the entire window. In order to keep this
- first example short, we will only type a few words in each
- statement.
-
- Select the "Insert" gadget at the top of the window. Note
- that the pointer changes into a hand with a pointing finger.
- Move the hand so that the finger points at the first
- statement. Press the left mouse button and notice that an
- Insert Confirmation Requester pops up with the pointer
- pointing to the word "After". If you wanted this new
- statement to be directly after the first statement, you would
- simply press the left mouse button again. Instead, move the
- pointer over the word "Down" in the requester and press the
- left mouse button. Notice that the text insert cursor appears
- on the screen just below the first statement and indented by
- two characters. Type the string "(school)Went to Summer touch
- typing classes.".
-
- Select the Insert gadget again and move the hand to point to
- the statement you just typed. Press the left mouse button
- twice (the first time selects the statement and the second
- time selects the word "After" in the confirmation requester.)
- Type the string "(beach)Went to the beach with Bob and met his
- little girl Lauren." (Who is Bob?) Bob is someone that
- attended the same typing class so you will want to put any
- information about Bob in statements that are subordinate to
- the statement labeled "school". Position the pointer over the
- first statement (the one labeled "school") and double click
- the right mouse button. The Insert Confirmation Requester
- should pop up and you should select the "Down" gadget. Type
- the string "(bob)Met Bob, a computer science student who
- wanted to learn typing skills."
-
- Move the pointer back to the last statement "(beach)Went...."
- and position the cursor over the word "Bob" and double click
- the left mouse button. Notice that the Jump Confirmation
- Requester pops up with the pointer positioned over the words
- "This Window". Move the pointer over the word "New Window"
- and press the left mouse button. Notice that the new window
- opens with the statement "(bob)Met Bob,..." as the anchor of
- the window. This is an example of a hypertext link. "Bob" is
- the label on the statement "(bob)Met..." and the double click
- of the left mouse button with the cursor over the word "Bob"
- was a Jump Link command. The same effect could be caused by
- selecting the "Jump Link" command from the "Commands" menu, or
- by selecting the Jump (Link) gadget at the top of the window
- and typing the characters "bob" followed by RETURN.
-
- Who is Lauren? Position the cursor right after the word
- "Lauren" and press the left mouse button once. The text input
- cursor should appear between the "n" and the ".". Type the
- string " (See <mirage,>)". This is a link to a
- picture file. Note that the comma must be present to indicate
- that the link is to some other file and not the document shown
- in the window ("tutorial").
-
- You have just added a hypertext link to an IFF picture file.
- This link had to be surrounded by "<" and ">" because it
- contained punctuation characters (":" and ","). Move the
- cursor between the "<" and the ">" and double click the left
- mouse button. When the Picture Confirmation Requester pops up
- select the "Full Screen" gadget. After a pause, a picture of
- Lauren appears (From the NewTek "Digi Paint" package.) Typing
- any character or pressing the left mouse button will remove
- the picture and return the Thinker screen. Repeat the
- selection of the picture link and select the "New Window"
- gadget. This time an approximation of the same picture will
- be drawn in a new workbench window that you may move around on
- the screen. This approximate picture is drawn with the 4
- colors available on your workbench. The window has an
- invisible close gadget in the upper left corner that will
- close the window when selected.
-
- If you want to save the changes you have made to this new
- project, select the "Apply Modifications" menu selection from
- the "Project" menu. "Discard Modifications" will restore the
- project to its initial state (with the Copyright notice).
-
- This completes the first part of the tutorial. The second
- part of the tutorial uses an existing document called
- "example". You can begin by closing the Thinker window
- (select the close gadget in the upper left corner) and
- starting all over again by double clicking on the EXAMPLE
- icon, or by doing a Jump Link to "example," (don't forget the
- comma). In either case you should read the next paragraph
- before going on with the second part of the tutorial.
-
- Start the second part of the tutorial by double clicking on
- the EXAMPLE icon or by selecting the icon and use the "Open"
- option of the "Workbench" menu. Read carefully and follow the
- instructions. It is helpful if you read ahead a little before
- executing the instructions. The tutorial is not very long or
- complicated but is intended solely to give the reader a little
- familiarity with the behavior of Thinker and build a little
- confidence for the first time user of Thinker.
-
- Not So Obvious Features
-
- Most of the operation of Thinker can be discovered by
- exploring the menus and selecting the gadgets. There are,
- unfortunately, some behaviors that are not manifest by this
- exploration. There are also some curious restrictions. Poor
- Person Software tries hard to produce software that is useful
- and complete but without all the frills that would make it
- expensive.
-
- Restrictions
-
- When the Mark option is used for both the beginning and end
- of a group, both ends of the group must be in the same
- window.
-
- Only 19 characters of a label are significant.
-
- Features
-
- Undo
-
- Once modifications have been applied to a Thinker document
- they cannot be "undone". However, Thinker will accumulate
- all the updates to a document in its memory (the Update
- pool) until Apply Modifications is selected in the Project
- Menu. The user should learn to schedule updates to allow
- for backout of recent errors.
-
- Remembering Local Clip adjustments
-
- When the clipping level for a branch is adjusted using the
- "+" gadgets in front of statements, this action is
- recorded in a small in-memory data base. This database
- has room for 32 selections of "+" gadgets in each project.
- If the 33rd entry is made into this database, the oldest
- entry is purged.
-
- Power Tools
-
- Double clicking the right mouse button with the pointer
- positioned over a statement will cause Thinker to put up
- a "power tool" requester. The left side of the requester
- is an "Insert" confirmation requester and the pointer is
- positioned over the "After" selection. Selecting "After"
- causes Thinker to insert a statement after the one under
- the pointer.
-
- The right side of the requester allows selection of the
- "Copy", "Move", "Jump", and "Delete" tools. Selecting one
- of these gadgets is equivalent to selecting the corresponding
- gadget at the top of the window.
-
- Duplicate Labels
-
- Thinker does not allow duplicate labels. When a label is
- encountered that is a duplicate of an already existing
- label, the label is changed to a null label. When this
- happens, a statement may end up beginning with "()" which
- is the result of eliminating the duplicate label.
-
-