Error render Regional Indicator flags #23963

Open
opened 2026-01-31 08:57:26 +00:00 by claunia · 3 comments
Owner

Originally created by @aleksandr-shevchenko on GitHub (Jan 15, 2026).

Windows Terminal version

latest

Windows build number

Win 10 22H2

Other Software

font - JetBrainsMonoNL Nerd Font

Steps to reproduce

a.go

package main

import (
	"fmt"
)

func main() {
    // flag - 🏳️‍🌈
    fmt.Println(string([]byte{0xf0, 0x9f, 0x8f, 0xb3, 0xef,
        0xb8, 0x8f, 0xe2, 0x80, 0x8d, 0xf0, 0x9f, 0x8c, 0x88}))

    // DE - 🇩🇪
    fmt.Println(string([]byte{0xf0, 0x9f, 0x87, 0xa9, 0xf0, 0x9f, 0x87, 0xaa}))
}

Expected Behavior

first emoji (rainbow flag) - show right because its a true ZWJ emoji
but second - it two Regional Indicator flags and show as error glyph.

But VSCode with same font show this two Regional Indicator flags properly as DE in editor and in own's debug console/terminal.

Image Image

Actual Behavior

Originally created by @aleksandr-shevchenko on GitHub (Jan 15, 2026). ### Windows Terminal version latest ### Windows build number Win 10 22H2 ### Other Software font - JetBrainsMonoNL Nerd Font ### Steps to reproduce a.go ``` package main import ( "fmt" ) func main() { // flag - 🏳️‍🌈 fmt.Println(string([]byte{0xf0, 0x9f, 0x8f, 0xb3, 0xef, 0xb8, 0x8f, 0xe2, 0x80, 0x8d, 0xf0, 0x9f, 0x8c, 0x88})) // DE - 🇩🇪 fmt.Println(string([]byte{0xf0, 0x9f, 0x87, 0xa9, 0xf0, 0x9f, 0x87, 0xaa})) } ``` ### Expected Behavior first emoji (rainbow flag) - show right because its a true ZWJ emoji but second - it two Regional Indicator flags and show as error glyph. But VSCode with same font show this two Regional Indicator flags properly as `DE` in editor and in own's debug console/terminal. <img width="21" height="26" alt="Image" src="https://github.com/user-attachments/assets/a3ff55bb-9300-4638-b43d-53cda14bf4bf" /> <img width="37" height="47" alt="Image" src="https://github.com/user-attachments/assets/3f23a6b7-0db1-459b-93ed-294a794e90ca" /> ### Actual Behavior -
claunia added the Area-RenderingIssue-BugPriority-3Impact-VisualNeeds-Tag-Fix labels 2026-01-31 08:57:27 +00:00
Author
Owner

@DHowett commented on GitHub (Jan 15, 2026):

That "glyph" appears to be Regional Indicator D and Regional Indicator E drawn on top of each other. @lhecker, that's unexpected!

@DHowett commented on GitHub (Jan 15, 2026): That "glyph" appears to be Regional Indicator D and Regional Indicator E drawn on top of each other. @lhecker, that's unexpected!
Author
Owner

@DHowett commented on GitHub (Jan 21, 2026):

Easier repro for those of us who don't want to install the Go toolchain:

"`u{d83c}`u{dde9}`u{d83c}`u{ddea}"
@DHowett commented on GitHub (Jan 21, 2026): Easier repro for those of us who don't want to install the Go toolchain: ```powershell "`u{d83c}`u{dde9}`u{d83c}`u{ddea}" ```
Author
Owner

@DHowett commented on GitHub (Jan 21, 2026):

Leonard had some ideas on what to do here. I'll let him cook.

@DHowett commented on GitHub (Jan 21, 2026): Leonard had some ideas on what to do here. I'll let him cook.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#23963