Skip to content

ligatures drawn imperfectly #476

Open
@nilsbecker

Description

@nilsbecker

i tried out the macligatures feature. with muliple fonts is see this:

  1. typing a != and leaving the cursor in insert mode, a somewhat broken 'not equal' ligature appears. when moving the cursor to the next (empty) line, this is repaired.

  2. moving the cursor from the = to the next empty line and back again a few times again reproduces the broken ligature on screen. moving the cursor further down to a nonempty line then repairs it.

  3. generally, moving the cursor onto one part of a ligature redraws the exact cursor position with the non-ligated glyph, but the adjacent positions retain chopped parts of the ligature.

it seems the problems stem from a too-local redrawing rule? better would be to redraw all characters of a ligature together, or possibly un-ligate the whole line of the cursor always.

this is the behavior with the Core renderer. with the non-core renderer i see slightly different problems. in particular when the cursor is on = the first part of the ligature stays black.

cursorline and relativenumbers disabled. filetype was python.

this exact behavior is with Fira, other fonts gave similar results. macvim 8 patch 329.

Metadata

Metadata

Assignees

No one assigned

    Labels

    RendererText rendering issues, including CoreText renderer

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions