This patch adds proper drawing of ligatures.
The code uses Harfbuzz library to transform original text of a single line to a list of glyphs with ligatures included.
Taken with Fira Code Regular 14pt:
- The patch adds additional dependency on Harfbuzz library and headers.
- Original patch was made for vanilla version of ST from latest master commit. It is not 100% compatible with Scrollback and Alpha patches, so I made modified versions that you can apply on top of a Scrollback and/or Alpha patch.
- Due to some limitations in drawing engine, ligatures will break when crossing colors, font styles or selection. They will still render properly as separate symbols, just not as ligatures.
- The original patch does not work very well with the boxdraw patch. Since it requires some additional changes in the code to make ligatures compatible with boxdraw, a special version of the patch was added, that you can apply on top of the boxdraw patch.
- It does not include Alpha or Scrollback patches.
- Alexander Rogachev - https://github.com/cog1to