wezterm
wezterm copied to clipboard
`unicode_version` option not always set
What Operating System(s) are you seeing this problem on?
Linux Wayland
Which Wayland compositor or X11 Window manager(s) are you using?
kwin_wayland
WezTerm version
20240203-110809-5046fc22
Did you try the latest nightly build to see if the issue is better (or worse!) than your current version?
Yes, and I updated the version box above to show the version of the nightly that I tried
Describe the bug
Basically, my font depends on an updated unicode version to display the proper width for many glyphs (many are too wide by default). I was fortunate enough to find out about the unicode_version
option and set it to 14, and it fixed all my grievances! However, I noticed that on subsequent instances of wezterm
, my Unicode icons were back to being the incorrect width. I set the option back to 8 and then to 14 again, reran wezterm
, and again everything worked perfectly, to later be incorrect upon later instances. Now I have much trouble getting it to work as it was working originally. I tried this with and without the shell integration, I uninstalled and reinstalled, no luck.
To Reproduce
- Set
unicode_version
to something other than 8, preferably 14 or 15 - Notice that the behavior is non-deterministic; sometimes this will affect font glyphs and sometimes not
- Try reloading and it may or may not fix things
Configuration
return {
-- bug happens even with a minimal config
unicode_version = 15,
}
Expected Behavior
The glyphs will all be correct widths (presumably because the unicode version is properly applied).
Logs
Debug Overlay wezterm version: 20240203-110809-5046fc22 x86_64-unknown-linux-gnu Window Environment: Wayland Lua Version: Lua 5.4 OpenGL: Mesa Intel(R) Xe Graphics (TGL GT2) 4.6 (Compatibility Profile) Mesa 23.3.5-arch1.1 Enter lua statements or expressions and hit Enter. Press ESC or CTRL-D to exit
Anything else?
This also happens when setting the unicode version to 15, and happens on the default JetBrains font I have noticed.
Thank you for the amazing terminal emulator!!!
There's not enough information here to reproduce or understand what might be happening; what specifically is being output, and in what circumstances are you seeing what happen? When does it differ from your expectations?
Sorry: basically what is outputted is many symbols are too wide: I will share an example of how they look:
...and how they should look:
This also affects things like bullet point characters, arrow characters, etc. All taking two widths, regardless of space, often when they should be one width no matter what. Updating the unicode version fixed everything briefly, but now I am at a loss because I am unable to reproduce the fix and setting different unicode versions does not really have an affect. Maybe the unicode version was a red herring, but I really don't think so because it is the only thing that I changed.
Edit: This specific symbol is ◡
Please capture a terminal recording:
- Launch wezterm. If possible, please use the default terminal size of 80x24 cells as it helps to keep things smaller and easier to manage.
- Inside that terminal run
wezterm record
to start a recording session. - Run through your reproduction steps
- Then type
exit
- You should see a message like:
*** Finished recording to /var/tmp/wezterm-recording-sF6B3u.cast.txt
- Attach the file that it produced to this issue.
The file is an asciicast (compatible with https://asciinema.org/) and can also be replayed using wezterm replay
.
The terminal recording allows me to replicate what is being sent to the terminal without requiring me to install the same applications as you and replicate your configuration for everything.