TiogaExecCommandsDoc.tioga
Michael Plass, July 10, 1986 9:46:44 am PDT
Rick Beach, December 29, 1986 5:28:58 pm PST
TIOGAEXECCOMMANDS
CEDAR 6.0 — FOR INTERNAL XEROX USE ONLY
TiogaExecCommands
Michael Plass
© Copyright 1985, 1986 Xerox Corporation. All rights reserved.
Abstract: Executive commands for the Tioga editor.
Created by: Michael Plass (moved from EditTool.df)
Maintained by: TiogaImplementors^.pa
Keywords: convert, editor, formatter, hyphenation, mesa, plain, Tioga, properties
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
Tioga Commands
ReadTiogaTipTables
Causes Tioga to read its TIP tables again. If your user category is advanced, you can also invoke this operation by selecting in any Tioga document and hitting CTRL-!.
WritePlain
Make Tioga files unformatted by eliminating everything except the plain text. Inserts leading tabs before each node according to its nesting in the tree and terminates each node with a carriage return.
WriteAscii
Convert Tioga files into a simple ASCII representation with no formatting information. Each node is terminated by a carriage return code. Inserts a blank line between Tioga nodes; ignores any nesting structure.
WriteMesaPlain
Same as WritePlain, except inserts double dashes at start of comment nodes.
ReadIndent
Build Tioga files with one node per line of source with indenting based on white space at the start of lines.
TiogaMesa
Convert Mesa files to Tioga format by combining a ReadIndent with a CTRL-M over the entire file.
DoTiogaOps
Expects a command line containing operations in the same format as in the EditTool operations field. Among other things, you can use this to initialize various EditTool choices such as IgnoreCase or MatchWords.
AnnotateProperties
Creates a system button, TiogaProps, to annotate Tioga documents with comments describing the node properties and the document nesting structure. LEFT-click TiogaProps with the selection in a document and the annotations are added; RIGHT-click TiogaProps and the annotations are removed from the selected document.
When a list of file names is given as command arguments, AnnotateProperties writes new versions of the files with the annotations in place.
PruneAnnotations
PruneAnnotations takes a list of files and writes new versions of the files with the annotations removed.
EditProperties
Provides a way of editing node and character properties without having to wrestle with the EditTool. The idea is to have one operation that `explodes' nodes (and all their properties) into a more editable form, and another operation to put it back into the usual WYSI~WYG form. For example, the node
Document: contents|style
looks like, in exploded form,
BEGIN NODE
CONTENTS
Text: Document
LOOKS(n)
Text: :
Char: (000|011)
Text: contents
LOOKS(s)
Postfix: 1 outlineBoxThickness 2 outlineBoxBearoff 9 backgroundAscent 3 backgroundDescent 0 0 1 backgroundColor
Text: |
Postfix: 1 outlineBoxThickness 2 outlineBoxBearoff 9 backgroundAscent 3 backgroundDescent 0 0 1 backgroundColor
Artwork: VRule
Text: style
LOOKS(s)
Postfix: 1 outlineBoxThickness 2 outlineBoxBearoff 9 backgroundAscent 3 backgroundDescent 0 0 1 backgroundColor
PROPERTIES
Comment: FALSE
Format: body
Postfix: 2 pt bigger topLeading
END NODE
Certain property values without an intelligible text representation will appear to have the value (opaque), with the actual value hidden as a property on the node. You can move, copy, or delete such an exploded property, but you cannot edit the property value. Be cautious about renaming an opaque property value.
EditPropertiesImpl registers two Tioga operations, namely OpenProperties and CloseProperties; the EditProperties command sets up the keyboard commands
CTRL-1 OpenProperties
CTRL-2 CloseProperties
This is hopefully just a temporary user interface until this functionaltity gets folded into Tioga.
Both commands grow the selection to node granularity before they do their thing.
The parser for CloseProperties is rather fussy; spaces, case, and node structure are significant, looks and properties are not (except for opaque property values). If there is a parse error, the screen blinks and the feedback selection is set to indicate approximately where the problem was.
Playing with these operations is a good way to better understand the structure of Tioga documents in general.
Hyphenation
Starts up hyphenation routines for Tioga. Currently the only hyphenation routine provided uses an explicit list of hyphenation rules on the Tioga node or its ancestor nodes. To use:
1. Execute the "Hyphenation" command to start things up.
2. Using the EditTool, add a node property with the key "HyphenationList" and the value consisting of a list of hyphenations ("-" between syllables, " " between words). This property applies to the node and all its descendants in the Tioga document. The most convenient place to put this property is usually the root, since then it applies to the whole document.
3. Place the style rule
 (List) hyphenation
so that it will be effective on the desired node. (Use a Postfix property, for example).
This step may be omitted; the (List) hyphenation routine is currently also registered as the (English) hyphenation routine, since we don't have a real English routine yet, and Cedar.style is set up to use (English) hyphenation in paragraphs.
4. A hyphenation point may also be marked by using the discretionary hyphen character (357|043); this is used in the word "demonstrate" below, and overrides the rule in the list.
Example:
<<NodeLevel: 4, Format: block, Comment: , HyphenationList: ap-pli-ca-bil-i-ty ex-em-pla-ry demon-strate ma-te-ri-al hy-phen-a-tion tech-niques text-u-al ses-qui-ped-el-i-an , Postfix: 1.65 in lineLength, CharSets: ...>>
Exemplary textual material to dem#onstrate the applicability of hyphenation techniques to sesquipedelian words.