User Guide

Making OpenType Fonts
639
Named glyph classes
A glyph class can be named by assigning it to a glyph class name, which
begins with the "@" character, and then referred to later on by the glyph
class name. For example:
@dash = [endash emdash figuredash]; # Assignment
space @dash space # Usage
The part of the glyph class name after the "@" is subject to the same name
restrictions that apply to a glyph name, except that its maximum length is
30.
Glyph class assignments can appear anywhere in the feature file. A glyph
class name may be used in the feature file only after its definition.
When a glyph class name occurs within square brackets, its elements are
simply added onto the other elements in the glyph class being defined. For
example:
@Vowels.lc = [a e i o u];
@Vowels.uc = [A E I O U];
@Vowels = [@Vowels.lc @Vowels.uc y Y];
Here the last statement is equivalent to:
@Vowels = [a e i o u A E I O U y Y];
No square brackets are needed if a glyph class name is assigned to another
single glyph class name. For example:
@Figures_lining_tabular = @FIGSDEFAULT;
Ranges, glyphs, and glyph class names can be combined in a glyph class.
For example:
[zerooldstyle - nineoldstyle ampersandoldstyle @smallCaps]
In FontLab you can include FontLab classes into the list of the OpenType
classes, so it will not be necessary to copy the information twice. We will
discuss this later.