!== Ligature issue #11527

Closed
opened 2026-01-31 02:50:12 +00:00 by claunia · 3 comments
Owner

Originally created by @arnabanimesh on GitHub (Nov 21, 2020).

Environment

Windows build number: 10.0.18363.1198
Windows Terminal version (if applicable): 1.4.3243.0

Any other software? No

Steps to reproduce

Use font FiraCode NF and type !==

Expected behavior

It should show up like this:
image

Actual behavior

It shows up like this:
image

Originally created by @arnabanimesh on GitHub (Nov 21, 2020). <!-- 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨 I ACKNOWLEDGE THE FOLLOWING BEFORE PROCEEDING: 1. If I delete this entire template and go my own path, the core team may close my issue without further explanation or engagement. 2. If I list multiple bugs/concerns in this one issue, the core team may close my issue without further explanation or engagement. 3. If I write an issue that has many duplicates, the core team may close my issue without further explanation or engagement (and without necessarily spending time to find the exact duplicate ID number). 4. If I leave the title incomplete when filing the issue, the core team may close my issue without further explanation or engagement. 5. If I file something completely blank in the body, the core team may close my issue without further explanation or engagement. All good? Then proceed! --> <!-- 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. If this is an application crash, please also provide a Feedback Hub submission link so we can find your diagnostic data on the backend. Use the category "Apps > Windows Terminal (Preview)" and choose "Share My Feedback" after submission to get the link. Please use this form and describe your issue, concisely but precisely, with as much detail as possible. --> # Environment ```none Windows build number: 10.0.18363.1198 Windows Terminal version (if applicable): 1.4.3243.0 Any other software? No ``` # Steps to reproduce <!-- A description of how to trigger this bug. --> Use font `FiraCode NF` and type `!==` # Expected behavior <!-- A description of what you're expecting, possibly containing screenshots or reference material. --> It should show up like this: ![image](https://user-images.githubusercontent.com/6032584/99885018-0fdfc700-2c58-11eb-801d-80c0ae009960.png) # Actual behavior <!-- What's actually happening? --> It shows up like this: ![image](https://user-images.githubusercontent.com/6032584/99885001-f8a0d980-2c57-11eb-973f-ae7f57e3f0d7.png)
claunia added the Resolution-By-DesignNeeds-TriageNeeds-Tag-Fix labels 2026-01-31 02:50:12 +00:00
Author
Owner

@DHowett commented on GitHub (Nov 21, 2020):

You may have observed that the ligature components are printed in two different colors. This necessarily breaks up the ligature!
We cannot print a single ligature (one big glyph) in multiple colors. PowerShell has requested that they be displayed as individual units by changing the color.

@DHowett commented on GitHub (Nov 21, 2020): You may have observed that the ligature components are printed in two different colors. This _necessarily_ breaks up the ligature! We cannot print a single ligature (one big glyph) in multiple colors. PowerShell has requested that they be displayed as individual units by changing the color.
Author
Owner

@arnabanimesh commented on GitHub (Nov 21, 2020):

Why are they different colors even if there are no spaces in between? What does != signify?

@arnabanimesh commented on GitHub (Nov 21, 2020): Why are they different colors even if there are no spaces in between? What does `!=` signify?
Author
Owner

@DHowett commented on GitHub (Nov 21, 2020):

!= is a PowerShell inequality operator (i think)! The PowerShell parsing rules are difficult to know, because sometimes it does not require a space between certain things.

The ligature works properly if you enclose it in quotes, because PowerShell will parse the entire thing as a string and format it all in the same color.

@DHowett commented on GitHub (Nov 21, 2020): `!=` is a PowerShell inequality operator (i think)! The PowerShell parsing rules are difficult to know, because sometimes it does not require a space between certain things. The ligature works properly if you enclose it in quotes, because PowerShell will parse the entire thing as a string and format it all in the same color.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#11527