Custom tab

Table of Contents

Custom content
Overview
Adding or editing custom content
Reserved characters
Whitespace handling
Examples
Commands
Command arguments
List of commands
Variables
User variables
Attribute variables
System variables
Environment variables
Declaring user variables
The <set/> command
Strings and values
Measures
String transformations
String information
Data telltales
Leaf and partition indicators
Metadata properties
Variable expansion
Variables in text
Default values
Complex variable names
Stacking
Custom markers
Example 1 — Creating pseudo attributes or content
Example 2 — Adding new structure to your document
Spaces, rules and fills
The <space/> command
The <rule/> command
The <fill/> command
Content assembly
The <break/> command
The <end-column/> command
The <skip-leftpage/> command
The <cancel-bind/> command
Flow control
Conditional execution
Pattern matching
The <if> command
The <while> command
The <switch>..<case> command
The <debug/> command
The <log/> command
The <read/> command
The <readgen/> command
PDF commands
The <bookmark> command
The <bookmark-properties/> command
The <named-target/> command
Tables
The <table-properties/> command
The <row-properties/> command
The <cell-properties/> command
Custom tables
Overview
table-start
table-column
table-head
table-body
table-nextrow
table-cell
table-emit
Example
Restrictions
Margin rules
The <marginrule/> command
The <marginrule-properties/> command
Font and Text
The <font-properties/> command
The <fontmask-properties/> command
The <text-properties/> command
The <dictionary/> command
The <hyphenation/> command
The <rotate-text/> command
Images
The <image-info/> command
The <image-properties/> command
The <import/> command
Notes
The <note-properties/> command
Floats
The <float> command
Restrictions
Other float types
The <float-properties/> command
Page segments
The <segment-properties/> command
Processing instructions
Passing PI content via a named attribute
Passing PI content as a list of attributes
Passing PI content as character data
Looseleaf, Change Pages, and Versioning
The <folio/> command
The <leaf-settings/> command
The <leaf-properties/> command
The <linkline-properties/> command
The <link-folio/> command
The <page-properties/> command
The <release-properties/> command
Looseleaf variables
Content and variables
Content
Markup within variables
The <content-properties/> command
XML fragment processing
The <format/> command
The typesetting environment
The <topleaf-properties/> command
Page control and binding
Runtime variables
System variables
Perl extensions
The <perl-use/> command
The <perl-call/> command
Returning (Untagged) data from Perl
Passing XML structure into and out of Perl extensions
Example
Logging messages and errors
Perl extension properties
Custom content structure
Structural guidelines
Order of evaluation

A user customisation is a well-formed content fragment triggered from a style sheet mapping. User customisations provide a way to:

  • insert additional content or markup when the original content and markup does not contain sufficient information to generate a required effect;

  • interrogate the characteristics of a mapped tag and conditionally apply typesetting effects;

  • apply ‘on-the-fly’ transformations of scanned content.

Separate start and end tag user customisations can be defined for tag and custom marker mappings, whereas the customisations for Header and Footer and Note mappings are declared within either a single or pair of custom content fields.