TiogaExecCommandsDoc.tioga
Copyright Ó 1987, 1990, 1993 by Xerox Corporation. All rights reserved.
Michael Plass, June 11, 1990 2:51 pm PDT
Bier, August 27, 1991 4:01 pm PDT
Christian Jacobi, March 17, 1993 6:00 pm PST
TIOGAEXECCOMMANDS
CEDAR 10.1 — FOR INTERNAL XEROX USE ONLY
TiogaExecCommands
Michael Plass
© Copyright 1985, 1987, 1990, 1993 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: Cedar language, conversion, editor, formatting, hyphenation, Mesa language, style, Tioga documents, TIP tables, fonts
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
News
June 11, 1990 - Reinstated NoteNewFonts command.
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-!.
SetLevelIndent
Defines number of leading spaces to be used in WritePlain per nesting level.
Parameter is a number, or, "tab" for usage of a tab character.
WritePlain
Make Tioga files unformatted by eliminating everything except the plain text. Inserts leading tabs or spaces 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.
LFNewlines
Convert all newlines in the documents to be ASCII LINE-FEEDs (octal 012)
CRNewlines
Convert all newlines in the file to be ASCII CARRIAGE-RETURNs (octal 015)
WriteBrokenAscii
Convert Tioga files into a simple ASCII representation with a small amount of fidelity to the Tioga formatting. A blank line is inserted between Tioga nodes for formats that have a large amount of leading. Lines are prefixed by four spaces for every level of nesting. Tioga nodes are broken into several lines, if necessary to avoid putting too many characters on each line; continuation lines are indented a further two spaces.
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.
InstallTiogaPlain
Installs the Plain / Cedar menu buttons.
The "Plain" button converts the document to plain format. It is aequivalent to WriteMesaPlain on a file with the default indentation of two spaces per level.
The "Cedar" button converts the document to tioga tree structure and mesa looks.
Restrictions: Neither button works in a split document
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-pe-da-li-an , Postfix: 3.65 in lineLength 20 maxHorizontalExpansion 2 in bigger leftIndent, CharSets: ...>>
Exemplary textual material to dem#onstrate the applicability of hyphenation techniques to sesquipedalian words.
WarnUndefinedTiogaFormats
This command sets a bit in the style machinery so that a warning message will appear when a format property in a Tioga document is not defined by the style. This may be useful while you are debugging a style or changing a document to use a different style.
NoteNewFonts
The cleanest way to change your font environment is with a full boot, letting the installer get all of the new fonts before the software that depends on it is started. However, when you want to experiment with fonts, this is unwieldy. So, whenever you change your font environment (consisting of the files matching "/imagerfonts/**"), use the NoteNewFonts command to flush all the various font caches and repaint the screen.
NoteNewFontsNoRepaint
Like NoteNewFonts, but doesn't repaint the screen. This is more appropriate if you know your screen isn't currently using any new fonts.