Sublime Forum

Ligature support is OS dependent


This is an informational post for people who might ask themselves why ligatures don’t work for them.
Already stated in this forum are the points that a paid development branch version is needed (minimum version 3148?) and especially under Windows the right font_options (directwrite) are critical.
But the OS is important too.
Under a blank Windows7 SP1 ligatures don’t work. Only after applying some unspecified Windows patches they work.
On the Linux side on an up-to-date but old Centos6.9 ligatures don’t work. On an old Fedora 22 they do.


Sublime Text 3 Build 3207 Ligatures Not Working

We utilize OS libraries to do text shaping. It is certainly possible that there are bugs in old versions of Windows, or in old versions of Pango that don’t pick up certain ligatures.

The other reasons ligatures don’t show up:

  • A series of symbols is not a single token, according to the current syntax. Some poorly written syntaxes will scope == as two individual = assignment operators instead of a single == equality operator.
  • A font has its ligature in the dlig table, instead of liga, clig or calt tables. Some older versions of Pango (before 1.38) don’t support setting font features, so you can’t enable the dlig table.
  • We only support ligatures in sequences of symbols - ligatures composed of letters are not currently supported.
1 Like