Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

shaping issue with 1f575,1f575,200d in that sequence #5596

Open
Feoramund opened this issue Jun 19, 2024 · 4 comments
Open

shaping issue with 1f575,1f575,200d in that sequence #5596

Feoramund opened this issue Jun 19, 2024 · 4 comments
Labels
bug Something isn't working

Comments

@Feoramund
Copy link

What Operating System(s) are you seeing this problem on?

Linux X11

Which Wayland compositor or X11 Window manager(s) are you using?

awesomeWM 4.3

WezTerm version

wezterm 20240203-110809-5046fc22

Did you try the latest nightly build to see if the issue is better (or worse!) than your current version?

No, and I'll explain why below

Describe the bug

I am seeing multiple emoji printed when only two have been specified (and the latter has a modifier sequence on it).

To Reproduce

printf '\U0001f575\U0001f575\u200d\u9794\n'

Configuration

Default config.

Expected Behavior

No response

Logs

No error messages in the debug overlay.

Anything else?

I uninstalled my emoji font to see if that might show some difference, but I am still seeing numerous glyphs.

The git version package for my distribution's package manager has conflicts with installed packages and has not been updated in 4 months. I did check the commit history, issues, and PRs for anything that might be related to this bug, at least.

@Feoramund Feoramund added the bug Something isn't working label Jun 19, 2024
@inquisitev
Copy link

Here is what it looks like in wezterm
Screenshot 2024-06-19 at 6 55 25 PM

Here is what it looks like on mac terminal
Screenshot 2024-06-19 at 6 55 57 PM

are both of these wrong?

should there be a total of two symbols total? I am seeing 3 on mac.

@Feoramund
Copy link
Author

I would expect at least two, but no more than three. I was seeing sometimes six to eight of the emoji you see.

@wez
Copy link
Owner

wez commented Jul 13, 2024

Confirmed weird:

; wezterm ls-fonts --codepoints 1f575,1f575,200d
LeftToRight
 0 🕵    \u{1f575}    x_adv=11.428571428571429 cells=1  glyph=843  wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=11.428571428571429 cells=1  glyph=843  wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=0  cells=0  glyph=3    wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=11.428571428571429 cells=1  glyph=843  wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=0  cells=0  glyph=3    wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=11.428571428571429 cells=1  glyph=843  wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=0  cells=0  glyph=3    wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=11.428571428571429 cells=1  glyph=843  wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=0  cells=0  glyph=3    wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=11.428571428571429 cells=1  glyph=843  wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=0  cells=0  glyph=3    wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=11.428571428571429 cells=1  glyph=843  wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=0  cells=0  glyph=3    wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=11.428571428571429 cells=1  glyph=843  wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=0  cells=0  glyph=3    wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4                   x_adv=11.428571428571429 cells=1  glyph=843  wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig
 4 🕵‍   \u{1f575}\u{200d} x_adv=0  cells=0  glyph=3    wezterm.font("Noto Color Emoji", {weight="Regular", stretch="Normal", style="Normal"})
                                      /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf, FontConfig

underlying harfbuzz:

;  hb-view assets/fonts/NotoColorEmoji.ttf -u 1f575,1f575,200d

image

@wez
Copy link
Owner

wez commented Jul 13, 2024

; hb-shape assets/fonts/NotoColorEmoji.ttf -u 1f575,1f575,200d
[gid2267=0+1275|gid2267=1+1275|gid1=1+0]

@wez wez changed the title Terminal shows repeating emoji shaping issue with 1f575,1f575,200d in that sequence Jul 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants