Bug Report - Font Ligatures interact with the shell prompt #1255

Closed
opened 2026-01-30 22:20:19 +00:00 by claunia · 5 comments
Owner

Originally created by @tensor-programming on GitHub (May 22, 2019).

Environment

Windows 1903
Fira Code with Font Ligatures enabled

Steps to reproduce

Use a font with font ligatures and type - or = as your first character.

Expected behavior

I would expect the prompt not to interact with the characters. In c:\projects\> the > symbol should not connect with any font ligatures.

Actual behavior

The > symbol combines to create font ligatures.

The behavior is shown in the below images:
font-ligatures-error-1
font-ligatures-error-2

Originally created by @tensor-programming on GitHub (May 22, 2019). <!-- This bug tracker is monitored by Windows Terminal development team and other technical folks. **Important: When reporting BSODs or security issues, DO NOT attach memory dumps, logs, or traces to Github issues**. Instead, send dumps/traces to secure@microsoft.com, referencing this GitHub issue. Please use this form and describe your issue, concisely but precisely, with as much detail as possible. --> # Environment Windows 1903 Fira Code with Font Ligatures enabled # Steps to reproduce Use a font with font ligatures and type `-` or `=` as your first character. # Expected behavior I would expect the prompt not to interact with the characters. In `c:\projects\>` the `>` symbol should not connect with any font ligatures. # Actual behavior The `>` symbol combines to create font ligatures. The behavior is shown in the below images: ![font-ligatures-error-1](https://user-images.githubusercontent.com/22513880/58168814-2a00a980-7c5d-11e9-9715-8450d8f7d3ba.png) ![font-ligatures-error-2](https://user-images.githubusercontent.com/22513880/58168822-2cfb9a00-7c5d-11e9-8d83-0d617506bb57.png)
claunia added the Area-RenderingIssue-BugResolution-DuplicateProduct-Terminal labels 2026-01-30 22:20:19 +00:00
Author
Owner

@mdtauk commented on GitHub (May 22, 2019):

The Prompt should really be self contained. Maybe the settings screen should provide a visual way to choose your own prompt, if you wanted to use CharacterMap to insert a character, or a ligature sequence that wont combine with characters after it.

@mdtauk commented on GitHub (May 22, 2019): The Prompt should really be self contained. Maybe the settings screen should provide a visual way to choose your own prompt, if you wanted to use CharacterMap to insert a character, or a ligature sequence that wont combine with characters after it.
Author
Owner

@tensor-programming commented on GitHub (May 22, 2019):

Yes, this is what I am thinking as well. Decoupling the prompt from the inputted text to allow for different options. Then maybe custom prompts would also be possible.

In WSL at least there is a space between the prompt and the input so Ligatures are not possible. However, in both powershell and cmd it seems that they are.

@tensor-programming commented on GitHub (May 22, 2019): Yes, this is what I am thinking as well. Decoupling the prompt from the inputted text to allow for different options. Then maybe custom prompts would also be possible. In WSL at least there is a space between the prompt and the input so Ligatures are not possible. However, in both powershell and cmd it seems that they are.
Author
Owner

@HBelusca commented on GitHub (May 22, 2019):

Would inserting an (invisible) zero-width unicode space character after the end of the prompt fix the problem?

@HBelusca commented on GitHub (May 22, 2019): Would inserting an (invisible) zero-width unicode space character after the end of the prompt fix the problem?
Author
Owner

@tensor-programming commented on GitHub (May 22, 2019):

You could fix the problem with a break character of any kind. Ligatures are combinations of unicode characters to build symbols and they are a part of the font.

@tensor-programming commented on GitHub (May 22, 2019): You could fix the problem with a break character of any kind. Ligatures are combinations of unicode characters to build symbols and they are a part of the font.
Author
Owner

@glen-84 commented on GitHub (May 22, 2019):

Duplicate of #514.

@glen-84 commented on GitHub (May 22, 2019): Duplicate of #514.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#1255