Font Feature Settings Test

Some Permutations of font-feature-settings
Prefix Value Sample, normal spacing Sample, increased spacing
(code) Aus‌satz, Haus‌schatz, Zeit‌zoff
(none) Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
(expected results) 'Aussatz, Hausschatz, Zeitzoff' on Ubuntu Firefox 'Aussatz, Hausschatz, Zeitzoff' on Ubuntu Firefox, increased letterspacing
-moz- "cv01=1" Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"cv01" 1 Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
-webkit- "cv01" 1 Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"cv01" 1, "ccmp" Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"ccmp", "cv01" 1 Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"cv01" 1, "ccmp", "liga" Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"cv01" 1, "liga", "ccmp" Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"ccmp", "cv01" 1, "liga" Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"ccmp", "liga", "cv01" 1 Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"liga", "cv01" 1, "ccmp" Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"liga", "ccmp", "cv01" 1 Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
-ms- "cv01" 1 Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"cv01" 1, "ccmp" Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"ccmp", "cv01" 1 Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"cv01" 1, "ccmp", "liga" Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"cv01" 1, "liga", "ccmp" Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"ccmp", "cv01" 1, "liga" Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"ccmp", "liga", "cv01" 1 Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"liga", "cv01" 1, "ccmp" Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
"liga", "ccmp", "cv01" 1 Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
(none) "cv01" 1 Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
-moz- "cv01=1" Aus‌satz, Haus‌schatz, Zeit‌zoff Aus‌satz, Haus‌schatz, Zeit‌zoff
-webkit- "cv01" 1, "ccmp"
-ms- "cv01" 1, "ccmp"
(none) "cv01" 1

2012-01-29 Test Results

Firefox
Oll Korrect! By default, Firefox will apply liga and ccmp when in normal spacing, and only ccmp when in increased spacing. Firefox will correctly display -moz-font-feature-settings. The display is identical between major platforms.

Screenshots:

Chromium/Google Chrome
By default, Chromium and Google Chrome do not display any ligatures at all, not even ccmp. Chromium on Ubuntu and Google Chrome on Windows apply -webkit-font-feature-settings, but Google Chrome on OS X does not.

Beware that the order of the settings matters! If ligatures (ccmp or liga) come before "cv01" 1, then the latter will run on the resulting ligatures and therefore not produce expected results.

If liga is specified, it will apply not only in normal letterspacing, but also in increased letterspacing. So the solution is only to specify ccmp (after "cv01" 1!) or to have a dedicated -webkit-font-feature-settings for text with increased letterspacing.

On Windows, regular Google Chrome behaves like Chromium on Ubuntu, except for a faulty implementation of the ZWNJ which causes doubled space when spacing is increased.

Google Chrome on OS X shows a strange behaviour: If (and only if) any -webkit-font-feature-settings is present, it will display the liga ligatures – no matter whether they have been specified or not.

Screenshots:

Windows Internet Explorer Platform Preview (Internet Explorer 10)
By default, Windows Internet Explorer Platform Preview does not display any ligatures at all, not even ccmp. Windows Internet Explorer Platform Preview will display -ms-font-feature-settings.

If liga is specified, it will apply not only in normal letterspacing, but also in increased letterspacing. So the solution is only to specify ccmp (after "cv01" 1!) or to have a dedicated -ms-font-feature-settings for text with increased letterspacing.

Unlike in Chromium, the order of the specifications does not matter.

Note that Windows Internet Explorer Platform Preview is not the same thing as the regular Internet Explorer 10 that is installed with the Windows 8 Developer Preview. Regular Internet Explorer 10 – and Internet Explorer 9 – will always display liga ligatures.

Screenshots:

Opera
Opera always displays liga ligatures. The ZWNJ is not implemented correctly on Windows and OSX: It doubles the letterspacing when it is increased (it works fine on Ubuntu).

Screenshots:

Safari
Safari does not do any advanced stuff at all.