Page Numbers: Yes X: 522 Y: 10.5" First Page: 31
Margins: Top: 1.3" Bottom: 1"
Even Heading:
LAUREL MANUAL
Odd Heading:
4. The Laurel Editor
4. The Laurel Editor
The Laurel editor provides a convenient point-and-type style screen editor for editing messages in the composition region of the Laurel screen. Users of Bravo should be able to use the Laurel editor with almost no training, since the Laurel editor mimics most of Bravo’s interaction style. Formatting facilities are restricted to line-turning only; there are no "looks" in the Bravo sense. Only one font (a variation of TimesRoman 10) is supported, and only one face (plain) is available for text. Given these restrictions, however, the Laurel editor does provide many facilities that in some areas go well beyond Bravo.
The single Laurel program allows a user to select between two distinct editing styles, called modal and modeless. A modal editor style means that depending on the state (or mode) of the editor only certain actions are allowable. The meaning of a particular keystroke may be different at different times, depending on the current mode of the system. A modeless editor style means any command may be given at any time, regardless of the actions performed up to that time. According to this definition, the Laurel modeless editor is not, strictly speaking, modeless. It does come much closer to this ideal, however than does the modal editor.
The Laurel modal editor is nearly identical in command structure to the familiar Bravo 7 and 8 editors and to the previous Laurel 5.1 editor. The actions necessary to insert text in this editor are roughly: Select an item; type a text insertion command letter (A, I, or R); type or select text for insertion; terminate insertion (type ESC).
The Laurel modeless editor includes all of the commands of the modal editor, but the actions necessary for common operations are more streamlined. The modeless editor is similar in command structure to the BravoX and LaurelX editors. In the modeless editor, the actions required to insert text are: Select insertion point; type or insert text. No explicit start or stop of insertion is required.
Since the commands available in either editor are similar, this section describes each command in only one place, giving differences between modal and modeless in fine points. When a keyboard command is discussed, it will be identified by its command letter in two ways, for modal and for modeless editor invocation. In the modal editor, a command is distinguished by its being given at the appropriate time, i.e., when a caret is not blinking. Such commands are given merely by typing the command letter. In the modeless editor, where the caret is always blinking (you are essentially in type-in mode all the time), some other way must be used to distinguish a command letter from a typed-in letter. The Laurel modeless editor does this by requiring that an extra key be held down while you type the command letter (similar to holding down SHIFT for capital letters). The key used for this purpose is called COM (for COMMAND; see section 4.4 for its location on various keyboards.)
An editor keyboard command, for example, the Time insertion command is described as T (COM-T), indicating that in the modal editor the command is given by typing the letter T when in command mode (no blinking caret), or by COM-T in the modeless editor (at any time). Some commands allow synonyms, as with the text deletion command, D (DEL, COM-D). Here, in the modal editor, the command is given by typing the letter D when in command mode, while in the modeless editor the command is given either by typing the DEL key or by typing COM-D.
4.1. Getting started
There are numerous parameters that modify Laurel editor operations that you may set in your Laurel profile if you choose (see section 5). Fortunately, all of these parameters have default settings, so that you may use the Laurel editor without setting any of these parameters yourself. Laurel chooses the modal editor by default for compatibility with previous versions.
Should you wish to use the modeless editor, you must place the entry
Editor: Modeless
in your Laurel profile. A strongly recommended entry for the Laurel profile should you choose the modeless editor is
BluePendingDelete: TRUE
which will enable a convenient feature in that editor.
After having used either of the Laurel editors for some time, you may wish to set some of the other parameters in the Laurel profile to suit your own taste.
4.2. Selecting Text
The mechanics of selecting text in the Laurel editor are quite similar to those of Bravo, although Laurel extends the available functionality considerably. With one mouse button click you may select a character, word, line or paragraph. With an extra click you can extend the current selection. By clicking multiple times it is possible to expand a selection from character to word to line to paragraph to the complete document, or you may shrink one edge of the selection back down through the selection hierarchy.
4.2.1. Target and source selections
Two general types of selection will be referred to in this manual. The first is target selection, known in Bravo terms as primary selection. This selection is called target because it indicates where the editing will occur. A target selection is indicated on the screen with a solid underline or with a solid bottomed video reversal in the modeless editor when the selection is a replace selection. The other type of selection is source selection, known in Bravo terms as secondary selection. This selection is called source because it indicates the source of text to be copied. Source selections, both secondary and shifted, are indicated on the screen by a dotted underline or by a "serated bottom" video reversal in the modeless editor for move selection.
The mechanics of selection described below apply to both target and source selections except when otherwise indicated.
4.2.2. The selection hierarchy
The selection hierarchy refers to the character, word, line, paragraph, and document levels at which a text selection may be made. Going up the hierarchy means changing levels to the next higher one, e.g., from character to word. Note that line is considered higher than word, although a very long word that occupies multiple lines may actually be longer than a line. Such a case is rare. Going down the hierarchy means the opposite, i.e., changing levels from a higher level down to the next lower one.
4.2.3. Character selection
A character is any single character. To select a character, point the cursor at that character and click RED. A solid underline will appear under the character selected. If you hold RED down while you move the cursor, you will see the solid underline move from character to character as the cursor moves. When you lift up on RED, the solid underline will remain under the last character thus underlined.
In character selection, as with all text selection actions in Laurel, the previous selection is remembered while the new selection is being made. If the cursor is moved out of the text region in which the selection is being made while the mouse button used for selection is still down, the previous text selection is restored. To make a selection "stick", the mouse button (in this case RED) must be lifted up while the cursor is still pointing at the selected object. This last feature allows you to push down a mouse button at any place on the Laurel screen and hold it down while moving the mouse to any desired location (e.g., a screen command) without danger of destroying any selections along the cursor’s trajectory.
4.2.4. Word selection
A word is any of the following: a contiguous sequence of letters and digits, a contiguous run of blanks and tabs including at most one CR at the right edge, or a single punctuation character. To select a word, point the cursor at any place within that word and click YELLOW. A solid underline will appear under the word selected. If you hold YELLOW down while you move the cursor, you will see the solid underline move from word to word as the cursor moves. When you lift up on YELLOW, the solid underline will remain under the last word thus underlined.
A word may also be selected with two rapid clicks of RED, as described in Selection expansion below.
4.2.5. Line selection
A line is one line of text as displayed on the Laurel screen. Lines are somewhat arbitrary units of selection when several contiguous lines contain no CR, since the exact break point between lines depends on the widths of characters and on the width of the Laurel screen. To select a line, move the cursor into the line bar, the area of the Laurel screen to the left of the text and to the right of the scroll bar. When the cursor is in the line bar it appears as a right-pointing arrow. Point the cursor at the desired line and click RED. A solid underline will appear under the line selected. If you hold RED down while you move the cursor in the line bar, you will see the solid underline move from line to line as the cursor moves. When you lift up on RED, the solid underline will remain under the last line thus underlined.
A word may also be selected with three rapid clicks of RED in the text area or two rapid clicks of YELLOW in the text area, as described in Selection expansion below.
4.2.6. Paragraph selection
Although Laurel does not implement Bravo style paragraphs, it does provide a selection mode that gives similar results in simple cases. In Laurel, a paragraph is a unit of text bounded by double CR’s or by the ends of the document. A double CR appears on the screen as a single blank line--the first CR terminates the previous line of text while the second CR is the blank line. A selected paragraph contains the terminating double CR (if any) but not the initial CR. In a run of several CR’s, a selected paragraph will contain only a single CR, thus avoiding overlapping paragraphs.
To select a paragraph, move the cursor into the line bar (see line selection above), point the cursor at any line in the desired paragraph and click YELLOW. A solid underline will appear under the paragraph selected. If you hold YELLOW down while you move the cursor in the line bar, you will see the solid underline move from paragraph to paragraph as the cursor moves. When you lift up on YELLOW, the solid underline will remain under the last paragraph thus underlined. Paragraph selection in a large document that contains few double CR’s may take several seconds on an Alto.
A paragraph may also be selected with four rapid clicks of RED in the text area, three rapid clicks of YELLOW in the text area, or two rapid clicks of RED in the line bar, as described in Selection expansion below.
4.2.7. Document selection
In Laurel, there is no single button click to select an entire document, although the E (COM-E) command (section 4.4.4) may be used for this purpose in the message composition region only.
A complete document may be selected with five rapid clicks of RED in the text area, four rapid clicks of YELLOW in the text area, three rapid clicks of RED in the line bar, or two rapid clicks of YELLOW in the line bar, as described in Selection expansion below.
4.2.8. Selection extension
After having made an initial selection (with RED or YELLOW), you may wish to extend the selection to include more text. This is done by pointing the cursor at the new endpoint for your selection and clicking BLUE. At any time, a selection is said to be at a particular level in the selection hierarchy. In general, the extension to the selection will be made at the same level as the selection. For example, if your existing selection is at the character or word level, and the extension is made by pointing within the text, then the extension will be made at the character or word level respectively.
If you extend a character, word or line selection by pointing in the line bar, then the extension is made at the line level and the selection level is changed to the line level. When a selection is already at the line level, then extensions made by pointing within the text will also be made at the line level.
If a selection is already at the paragraph level, then extension by pointing within the text or within the line bar is made at the paragraph level. If a selection is already at the full document level, then extension merely reselects the full document.
Extending a selection to some point, when that point is not inside the existing selection, will extend the selection so that all of the existing selection plus the extra text up to (or down to) that point is included in the resulting selection. Extending a selection to some point that is within the existing selection will actually cause the selection to shrink. In this case, the endpoint of the existing selection that is closer to the beginning of the message will be retained in the resulting selection.
4.2.9. Selection expansion
Selection expansion differs from selection extension in that it expands the current selection to the next higher level in the selection hierarchy. Selection expansion is accomplished by rapid multiple RED or YELLOW mouse clicks, where each click after the first is given within the selection existing at that time. For example, pointing at a character and clicking RED once will select that character as usual. Pointing at a character and clicking RED twice will select the word containing that character; clicking three times will select the line containing that character; four times will select the paragraph containing that character; five times will select the entire message. Multiple clicks with YELLOW are similar, except that the first click selects a word and subsequent clicks go up the hierarchy from there.
Multiple clicks with RED in the line bar start at the line level, then up to paragraph level and then to document level. Multiple clicks with YELLOW in the line bar start at the paragraph level, then go to document level.
Clicking rapidly is important. There is a timeout associated with multiple clicking for selection expansion. If the next click is given within the timeout after the last click is completed, the selection is expanded. If the next click is given after the timeout has elapsed, then the selection starts at the original level in the selection hierarchy (for that button and position) again. The timeout should be selected so that stationary multiple clicks are naturally produced within the timeout, while mouse motion between clicks uses enough time so that the multi-click hierarachy starts over.
The default timeout for selection expansion via multiple clicks is 0.39 seconds. It is possible that your own mouse habits may not be in agreement with this setting, causing you to get selection expansion when you don’t want it or vice versa. If this is the case, or if you wish to disable the multiple click--selection expansion feature altogether, then you may want to use the Click: entry in the Laurel profile (see section 5).
4.2.10. Selection reduction
The level of a selection may be reduced by multi-clicking BLUE. The first BLUE click causes extension as usual. If another BLUE click is given within the timeout, then the level of the selection is reduced by one (but never below character level). This feature is useful if you start a selection at the word (or higher) level, but after extending the selection you realize that the new endpoint should be at a character boundary. Just re-click BLUE several times to knock the selection level down, and select the endpoint as you wish. Selection reduction uses the same timeout as selection expansion (see above).
4.2.11. Type-in point selection (modeless editor only)
To set the type-in point in the modal editor, a keyboard command such as A, I, or R must be given (see section 4.4). In the modeless editor, the type-in point is selected along with the text whenever you make a target (primary) selection. The type-in point is shown by a blinking caret (also called the insertion caret); the tip of the caret shows where typed-in characters will be inserted. Thus in the modeless editor, you get both an underlined piece of text and a blinking caret together with each selection action.
The type-in point is placed between characters at one end of the selected text. This end is the one closest to the tip of the cursor when the selection is made.
Text geography lesson: The point after the last character on a line is logically the same as the point before the first character on the next line. Laurel will place the type-in point before the last character on a line when the above rule states that it should be placed after that character. This is done because 1) a caret meant to blink at the point after the last character on a line is always placed before the first character of the next line, 2) such a placement would be spatially distant from the text selection and thus confusing, and 3) it is the "right" thing. Thus you may sometimes see the display of the blinking caret slightly "inside" of the solid underline. If you wish to place the caret after the last character of a line, then select the beginning of the next line. The only way in the modeless editor to position the insertion point after the last CR of a message is with the COM-A command (section 4.4).
In general, one is interested in either selecting a piece of text or in selecting the type-in point, but not both. If you want to select a piece of text in the modeless editor, just select that text ignoring the placement of the insertion caret. If you want to place the type-in point, then point the tip of the cursor at the point between characters where you want the type-in point to be. The selection underline will be drawn under either the previous or subsequent item. The underline placement in this case is irrelevant, the important fact to remember is that the insertion caret will be placed properly if you point at the spot where you want it to be.
4.2.12. Replace selection (modeless editor only)
When you make a replace selection, subsequent type-in will delete the selected text automatically in addition to inserting the typed-in characters. Although in the modeless editor it is possible to replace text by selecting that text, deleting it, and then typing in the new text, it is easier to select the original text with replace selection and then just type the new text.
Whenever a selection is made a replace selection, it is indicated on the screen by video reversal rather than by the usual solid underline. For example, the initial text selection in the skeleton form provided by the New form command is made this way.
There are several ways in which you can select text with replace selection. One is that several commands (New form, Answer, Forward, Find, and NEXT--section 4.4) select text this way. A second way is enabled if you have set the BluePendingDelete feature in your Laurel profile (highly recommended if you use the modeless editor). If this feature is enabled, then all selections made with BLUE automatically become replace selections. The reasoning behind this is that if you use BLUE for selection, you are more interested in the selected text than in the insertion point, and your interest in this text is for purposes of deleting or replacing it. On the other hand, if you only want to insert text, then there is no need to use BLUE in making the selection. The parameter name "BluePendingDelete" is retained for historical reasons.
4.3. Text input
Text may be inserted into the message in the composition region in several ways. The editor displays a blinking caret in the position in which text will be inserted whenever the editor is ready for text insertion. In the modal editor, the blinking caret is only displayed when in insert mode. In the modal editor, you must enter insert mode by giving one of the three start-of-type-in keyboard commands, A, I or R. In the modeless editor, the caret is always blinking; it is essentially in insert mode all of the time.
When type-in is acceptable, character insertion may be performed simply by typing characters from the keyboard. The characters will be entered into the message in the composition region at the blinking caret, and Laurel will continuously format and display the entire message to accomodate the new type-in.
4.3.1. Special characters
Several characters have special meanings during type-in:
BS, CTRL-A (either editor): Back up over (erase) the previous character. Characters of newly typed-in text that are erased by BS or CTRL-A are not recoverable via U (CANCEL, COM-U) (section 4.4). In the modal editor, BS or CTRL-A will not back up beyond the original insertion point for this sequence of type-in. In the modeless editor, BS or CTRL-A will back up from any position regardless of the original insertion point.
SHIFT-BS, SHIFT-CTRL-A (modeless editor only): Erase the following character.
CTRL-W (BW on Alto II keyboard, modal editor only), (COM-BS, modeless editor only): Back up over (erase) the previous word. This "word" is of the form A+N*, where A+ is one or more alphanumeric characters (letters and digits) and N* is zero or more non-alphanumeric characters (white space and punctuation.) This is different from, and consists of roughly two "words" as defined in section 4.2, Word selection. In the modal editor, CTRL-W will not back up beyond the original insertion point for this sequence of type-in. In the modeless editor, CTRL-W will back up from any position regardless of original insertion point.
SHIFT-CTRL-W, SHIFT-COM-BS (modeless editor only): Erase the following word. Here a word is defined as N*A+, with N* and A+ defined as above.
ESC, DEL (modal editor only): Terminates insertion. Insert mode is terminated; command mode is entered.
TAB: Laurel 6 supports tabs. There are twelve equally spaced tab stops (in Bravo parlance, 40 point plain tabs) across one screen line. A TAB will insert white space up to the next tab stop from the point at which the caret is blinking. Fine point: A TAB must be at least 5 points wide, the width of a space, to make selection of tabs reasonable. A TAB inserted less than five points before a tab stop will tab over to the next tab stop. Although TAB’s may be inserted across line breaks in Laurel, it is recommended that they be used only on lines preceded by a CR. Otherwise, subsequent insertions can rearrange these tabs in unexpected ways, and in addition, hardcopy may not correspond to the display.
LF: The LF key in the modal editor inserts a Line Feed character into your message. There is generally no need to use this character, as Laurel displays new lines based on CR or line breaks alone. In the modeless editor, this key is actually a separate command key (PASTE), therefore it should be avoided during type-in.
4.3.2. Shifted selection
A special kind of selection, called shifted selection, is available as an alternative to type-in whenever type-in is allowed (either editor). To make a shifted selection, hold down either SHIFT key, make a selection in either the message display region or in the message composition region according to the standard conventions while holding the SHIFT key down, and then lift up on the SHIFT key. The selection will be highlighted with a dotted underline as you make it. When you lift up on the SHIFT key, the dotted underline will disappear, and a copy of that text will be inserted at the blinking caret.
In either editor, no ESC is necessary to confirm the shifted selection. Lifting up the SHIFT key is all that is required. Also, insert mode is not terminated by using shifted selection. You may proceed to type or perform another shifted selection immediately. You may find intermixing type-in and shifted selections during a single insertion sequence to be very convenient. All selection rules apply while making a shifted selection, in particular, multi-clicking for selection expansion is allowed.
In the modeless editor, a replace selection will be replaced by shifted selection just as it is replaced by type-in.
If you start to make a shifted selection by mistake, you may cancel that shifted selection any time before lifting up the SHIFT key. Just press the DEL or CANCEL (modeless) key while the SHIFT key is still down. The dotted underline will disappear, and no text copying will take place.
4.3.3. Secondary selection (modal editor only)
A holdover from the previous version of Laurel (and from Bravo) is secondary selection. This kind of text selection is available only in the modal editor. It is similar to shifted selection except that
a)It may be performed only immediately after issuing an A, I, or R command,
b)The SHIFT key is not held down,
c)You must type an ESC to confirm the secondary selection, and
d)You leave insert mode and return to command mode after the ESC.
Shifted selection is in almost all respects superior to secondary selection. Secondary selection has been retained to preserve compatibility with the previous Laurel editor.
4.3.4. Delete selection (modeless editor only)
Replace selections wait for type-in before the selected text is deleted; they may be cancelled by reselecting somewhere else. A delete selection can be made by holding down the CTRL key while making a selection. In this case, the selection is indicated by video reversal regardless of the mouse button used for making the selection, and when all buttons go up, the text is deleted immediately. This gives a very rapid means for deleting several pieces of text in a message.
If you start to make a delete selection by mistake, you may cancel that selection any time before lifting up the CTRL key. Just press the CANCEL key while the CTRL key is still down. The video reversal will be replaced by a solid underline, and no deletion will take place.
4.3.5. Move selection (modeless editor only)
A logically elegant kind of selection called Move selection is available in the modeless editor only. CTRL-select performs a delete selection, i.e., it is deleted immediately after lifting up the keys. When coupled with SHIFT-select, which means that the selected text is copied to a insertion point, we get CTRL-SHIFT-select, or move selection, which deletes the text from its current position and inserts it at the insertion point.
Before making a move selection, verify that the insertion caret is in the correct place for inserting the text to be moved. Push down both the CTRL and SHIFT keys, make the selection of text to be moved, and lift up the CTRL and SHIFT keys. When the move selection is made, the selected text will be highlighted by video reversal (as with CTRL-select) with a "serated bottom" (as with SHIFT-select). When the CTRL and SHIFT keys are raised, the selected text will be deleted and inserted at the insertion caret. The insertion caret will blink at the point just after this newly inserted text, and you may continue type-in.
If you start to make a move selection by mistake, you may cancel that selection any time before lifting up the CTRL and SHIFT keys. Just press the CANCEL key while the CTRL or SHIFT key is still down. The serated bottom video reversal will disappear, and no move will take place.