This file tests to make sure that high-level CSS font properties work with Junicode 2. For each feature:
cvNN[1]
AaCcDdEe → AaCcDdEe.
font-variant-alternates: character-variant(Alternate-A-1,
Alternate-a-1,
Alternate-C,
Alternate-c,
Alternate-D,
Alternate-d-1,
Alternate-E-1,
Alternate-e-1)
Fallback: font-feature-settings: "cv01", "cv02", "cv05", "cv06", "cv06", "cv07",
"cv08", "cv09", "cv10"
cvNN[2]
AadEe → AadEe.
font-variant-alternates: character-variant(Alternate-A-2,
Alternate-a-2,
Alternate-d-2,
Alternate-E-2,
Alternate-e-2)
Fallback: font-feature-settings: "cv01" 2, "cv02" 2, "cv08" 2, "cv09" 2, "cv10" 2
cvNN[3]
Aade → Aade.
font-variant-alternates: character-variant(Alternate-A-3,
Alternate-a-3,
Alternate-d-3,
Alternate-e-3)
Fallback: font-feature-settings: "cv01" 3, "cv02" 3, "cv08" 3, "cv10" 3
cvNN[4]
a → a.
font-variant-alternates: character-variant(Alternate-a-4)
Fallback: font-feature-settings: "cv02" 4
cvNN[5]
a → a.
font-variant-alternates: character-variant(Alternate-a-5)
Fallback: font-feature-settings: "cv02" 5
Swapped thorn and eth (ss01, from English)
ÞÐþð → ÞÐþð.
font-variant-alternates: styleset(Alternate-thorn-and-eth)
Fallback: font-feature-settings: "ss01"
Insular (ss02)
wyrd oft nereð unfægne eorl → wyrd oft nereð unfægne eorl.
font-variant-alternates: styleset(Insular-letter-forms)
Fallback: font-feature-settings: "ss02"
Discretionary Ligatures (dlig)
strict → strict.
font-variant-ligatures: discretionary-ligatures
Fallback: font-feature-settings: "dlig"
Historical Ligatures (hlig)
al Psi → al Psi.
font-variant-ligatures: historical-ligatures
Fallback: font-feature-settings: "hlig"
Old-style numbers (onum + pnum)
0123456789 → 0123456789.
font-variant-numeric: oldstyle-nums proportional-nums
Fallback: font-feature-settings: "onum", "pnum"
Petite caps (pcap)
abcdefg → abcdefg.
font-variant-caps: petite-caps
Fallback: font-feature-settings: "pcap"
Small caps (smcp)
abcdefg → abcdefg.
font-variant-caps: small-caps
Fallback: font-feature-settings: "smcp"
All small caps (c2sp + smcp)
Abc Defg → Abc Defg.
font-variant-caps: all-small-caps
Fallback: font-feature-settings: "c2sp", "smcp"
Subscripts (subs)
012345 → 012345.
font-variant-position: sub
Fallback: font-feature-settings: "subs"
Superscripts (sups)
012345 abcd → 012345 abcd.
font-variant-position: super
Fallback: font-feature-settings: "sups"
Note: Firefox is scaling and repositioning characters instead of applying
the sups feature, even though it does support that
feature. As font-variant-position is not
supported by Chrome or Safari, font-feature-settings
should be used instead.
Slashed zero (zero)
0 → 0.
font-variant-numeric: slashed-zero
Fallback: font-feature-settings: "zero"
Enlarged minuscules (ss06)
abcde → abcde.
font-variant-alternates: styleset(Enlarged-minuscules)
Fallback: font-feature-settings: "ss06"
Underdotted text (ss07)
abcde → abcde.
font-variant-alternates: styleset(Underdotted)
Fallback: font-feature-settings: "ss07"
Contextual long s (ss08)
simple sizzles cliffside → simple sizzles cliffside.
font-variant-alternates: styleset(Contextual-long-s)
Fallback: font-feature-settings: "ss08"
English forthorc (ss12)
abcdefghi → abcdefghi.
font-variant-alternates: styleset(Early-English-futhorc)
Fallback: font-feature-settings: "ss12"
Elder futhark (ss13)
abcdefghi → abcdefghi.
font-variant-alternates: styleset(Elder-futhark)
Fallback: font-feature-settings: "ss13"
Younger futhark (ss14)
abcdefghi → abcdefghi.
font-variant-alternates: styleset(Younger-futhark)
Fallback: font-feature-settings: "ss14"
Long branch to short twig (ss14 + ss15)
abcdefghi → abcdefghi.
font-variant-alternates: styleset(Younger-futhark, Long-branch-to-short-twig)
Fallback: font-feature-settings: "ss14", "ss15"
Contextual r rotunda (ss16)
priest offer arise port → priest offer arise port.
font-variant-alternates: styleset(Contextual-r-rotunda)
Fallback: font-feature-settings: "ss16"
Rare diagraphs (ss17)
au av oo → au av oo.
font-variant-alternates: styleset(Rare-digraphs)
Fallback: font-feature-settings: "ss17"
Old-style punctuation spacing (ss18)
(here) there; “everywhere” → (here) there; “everywhere”.
font-variant-alternates: styleset(Old-style-punctuation-spacing)
Fallback: font-feature-settings: "ss18"
Gothic transliteration (ss19)
abcdefg → abcdefg.
font-variant-alternates: styleset(Latin-to-Gothic)
Fallback: font-feature-settings: "ss19"
Low diacritics: (ss20)
bͦ h&_idotl; → bͦ h&_idotl;.
font-variant-alternates: styleset(Entities, Low-diacritics)
Fallback: font-feature-settings: "ss20"
Letters with high overlines (ss04)
DCLXXIV dclxxiv → DCLXXIV dclxxiv.
font-variant-alternates: styleset(High-overline)
Fallback: font-feature-settings: "ss04"
Letters with medium-high overlines (ss05)
dclxxiv → dclxxiv.
font-variant-alternates: styleset(Medium-high-overline)
Fallback: font-feature-settings: "ss05"
Alternative Greek letters (ss03)
βγθφπω → βγθφπω
font-variant-alternates: styleset(Alternate-Greek)
Fallback: font-feature-settings: "ss03"
Appendix: Font feature values
The names of Stylistic Sets and Character Variant features can be declared in the @font-feature-values CSS at-rule (not yet implemented in all browsers). Here is the rule for this document:
@font-feature-values "Junicode Two Beta VF" {
@styleset {
Alternate-thorn-and-eth: 1;
Insular-letter-forms: 2;
Alternate-Greek: 3;
High-overline: 4;
Medium-high-overline: 5;
Enlarged-minuscules: 6;
Underdotted: 7;
Contextual-long-s: 8;
Entities: 10;
Early-English-futhorc: 12;
Elder-futhark: 13;
Younger-futhark: 14;
Long-branch-to-short-twig: 15;
Contextual-r-rotunda: 16;
Rare-digraphs: 17;
Old-style-punctuation-spacing: 18;
Latin-to-Gothic: 19;
Low-diacritics: 20;
}
@character-variant {
Alternate-A-1: 1;
Alternate-A-2: 1 2;
Alternate-A-3: 1 3;
Alternate-a-1: 2;
Alternate-a-2: 2 2;
Alternate-a-3: 2 3;
Alternate-a-4: 2 4;
Alternate-a-5: 2 5;
Alternate-C: 5;
Alternate-c: 6;
Alternate-D: 7;
Alternate-d-1: 8;
Alternate-d-2: 8 2;
Alternate-d-3: 8 3;
Alternate-E-1: 9;
Alternate-E-2: 9 2;
Alternate-e-1: 10;
Alternate-e-2: 10 2;
Alternate-e-3: 10 3;
}
}