tonsky / tonsky/FiraCode

Horizontal and vertical gaps on some hyphen/equal based ligatures

Open
#1,081 8 comments 6 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

hinting
Dominant language
Clojure
Stars
82k
Forks
3.2k
PR merge metrics
No merged PRs in 30d

Description

I notice few bugs on ligatures involving equals and hyphens since version 4 :

  • small gaps appear, most of the time between 2 first or 2 last characters
  • a vertical gap occurs on specific equal-based ligatures like =>>= but maybe
    it's an expected behavior (related to issue #1043 ?), more or less visible depending on font size
  • a visual glitch on =:= ligature (maybe related to the vertical gap problem?)

I guess it was introduced by the "Arbitrary-long combinative hyphen/equal based arrows" feature in v4. Arrows look good in v3.1 although they are limited in length.

I mainly notice the bug in Kitty terminal emulator on Arch linux.
It's less visible in other apps like L3afpad editor and not noticeable
in Firefox aside from the =:= glitch

Here is a screenshot @ 15pts font size for various weights, with Fira Code v5.1 / v4 / v3.1
20200612-151505_1919x636

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the reported ligature gaps in Kitty on Arch Linux using Fira Code v5.1, then compare the same examples across v4 and v3.1 as shown in the screenshot. Focus on the arbitrary-long combinative hyphen/equal-based arrows and the =:= ligature; done means the horizontal, vertical, and visual glitches are understood and corrected without regressing the v3.1 behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux
Domain
computer-graphics
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.