Screen Reference Index
Plato Documentation  version 0.9, 2014.02.14
 Documentation Index    Markup: Autoenumeration
 
Overview
Introduction to Plato
The Basics
Plato's Display
Usability
 
Viewing
Views
Searching
Lookups
 
Building
Building Object Classes
Creating and Using Objects
Importing Objects
Creating and Managing Cross References
Creating and Managing Databases
Creating and Managing Class Libraries
Creating and Managing Markup
Markup: Document Creation
Markup: Data Import
Markup: Autoenumeration
Markup: Cross Reference Maps
Markup: Database Export
Markup: Class Library Export
Creating and Managing Scripts
External Integration
 
Analyzing
Cross References
Categories
Multi-dimensional Categories
Bookmarks
Lists
Concordance
Profiles
 
Maintaining
Setting Up
Configuration: System
Configuration: Database
Configuration: Folders
 
Reference
Screen Reference
Properties Reference
 
Auto-enumeration
Plato data structures
Figure 1: Sample Auto Enumeration Output
Auto-enumerator markup creates auto-enumeration schema for use in scripts. Auto-enumeration schema are of two types: autoenumeration with formatting and autonumeration without formatting.

What is being Numbered?

For auto-enumeration with formatting, each object processed by the script will be numbered sequentially in the order it is found. If without formatting, each #NUM token will be numbered, not each object.

If a script is set to descend cross references or folders, each level is numbered seperately in the sequence in which objects are found. When the script returns to the previous level, numbering for that level will pick up from where it left off.

Auto-Enumerated Output

Two sample results of markup and autoenumeration schema are shown in figure 1 Here are the autoenumeration schemes that created then:

Markup (the same for both A and B):
[[object std_organization: 158]]
[organization_name] ([organization_acronym])
[[object spec_ref_item: 367]]
[reference_ID] (Title: [reference_title])

Autoenumeration scheme for A:
[GENERAL FORMAT]
Enumerator type 1: auto-enumerate and format
Right margin: 96
Hanging Indents: yes

[FORMAT BY LEVELS]
Level 1
Token: #.
Token width: 14
Paragraph indent: 0
Level 2
Token: #.#
Token width: 14
Paragraph indent: 0
Level 3
Token: #.#.#
Token width: 14
Paragraph indent: 0
Level 4
Token: #.#.#.#
Token width: 14
Paragraph indent: 0

Autoenumeration scheme for B:
[GENERAL FORMAT]
Enumerator type 1: auto-enumerate and format
Right margin: 96
Hanging Indents: yes

[FORMAT BY LEVELS]
Level 1
Token: #.
Token width: 5
Paragraph indent: 0
Level 2
Token: #.#
Token width: 8
Paragraph indent: 5
Level 3
Token: #.#.#
Token width: 11
Paragraph indent: 13
Level 4
Token: #.#.#.#
Token width: 14
Paragraph indent: 24


Auto-enumeration Formatting Conventions
Plato data structures
Figure 2: Autoenumeration Formatting Convention
Auto-enumeration with formatting is for creating plain text documents that use fixed-width fonts. It works in conjunction with markup that identifies attributes but has minimal or no other formatting. Auto-enumeration formula take the codes found in the markup and supplies the specified paragraph indents and margins as well as the enuerators. Each auto-enumeration formula contains markup information for each level of nested content that may be encountered in a document.

Each formula contains the following fields:
  • document right margin (for plain-text formatting)
  • hanging indent When checked, causes the enumerator to hang to the left of the paragraph indent.
  • Enumeration info for level 1:
    1. level of nesting (1, 2, 3, 4 etc.) Nesting here refers to the nesting of folders within folders, or cross references of cross references. Up to 10 levels of nesting is supported
    2. Token (format with which to enumerate the paragraph, section, etc.) The cross hatch character '#' in a token represents a number. Other characters are printed literally. When more than one cross hatch character is used, each represents the number at a level of nesting when read left to right. In the token "#.#.#" for example, the first cross hatch represent the number at level 1, the next at level 2, etc. This allows enumerators to show the exact position of an item in a large list of nested items.
    3. Token Width Specifies the number of spaces in which to embed the enumeration token. This width should be specified so as to contain the largest number expected plus a space between the end of the number and the start of the text.
    4. paragraph indent Specifies the number of spaces in which to indent a paragraph. This indent will be placed to the left of the enumerator unless the "hanging indent" option is checked.
  • Enumeration info for level 2: [etc.]

Figure 2 illustrates hoe paragraph indent and token width affect the appearance of the printed page.

Auto-enumeration without formatting

Auto-enumeration without formatting is for RTF/HTML documents that have their own formatting markup but no auto-enumeration feature. For these documents you must place an auto-enumeration token ([#NUM]) in your markup at the location you want to numbering to appear. The auto-enumeration formula will then look for auto-enumerator tokens and supply the correct paragraph or section numbers, but will not take care of formatting.


Invoking Auto-enumeration
Plato data structures
Figure 3: Autoenumeration Drop Down in the Script Pane
Invoke auto-enumeration via the script editor. Open the script editor and navigate to the output format pane. Select the autoenumeration scheme you want to use from the autoenumeration pull down list at the bottom of the pane (see figure 3).
This page last updated on 2014.08.12