Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clarify glyph name ranges (2.g.i) #1221

Merged
merged 2 commits into from
Sep 9, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 14 additions & 1 deletion docs/OpenTypeFeatureFileSpecification.md
Original file line number Diff line number Diff line change
Expand Up @@ -686,6 +686,18 @@ in an alternate substitution lookup type rule.
<a name="2.g.i"></a>
#### 2.g.i. Ranges

A glyph range is a notational mechanism in the feature file grammar that makes it
possible to define a class of several glyphs is a concise way. The mechanism makes
use of glyph names that use a contiguous alphabetic sequence A to Z or a to z (or
sub-sequences thereof), or that use contiguous numeric sequences, such as 0 to 9. A
range is specified by referencing starting and ending glyph names, and all of the
glyph names in the implied sequence are included in the class. The glyphs referenced
by these names do not have to be in a contiguous sequence in a font file or sources;
only their names need to be in a contiguous sequence.

If a glyph name within the implied sequence does not correspond to a glyph in the font
file or font sources, it is ignored.

A range of glyphs is denoted by a hyphen:

```fea
Expand All @@ -703,7 +715,8 @@ feature file glyph names. For example:
For CID fonts, the ordering is the CID ordering.

For non-CID fonts, the ordering is independent of the ordering of glyphs in the
font. `<firstGlyph>` and `<lastGlyph>` must be the same length and can differ:
font. `<firstGlyph>` and `<lastGlyph>` must be the same length and can differ only
in one of the following ways:

1. By a single letter from A-Z, either uppercase or lowercase. For example:

Expand Down