GNOME Bugzilla – Bug 772812
weird behaviour of powerline
Last modified: 2021-06-10 15:16:56 UTC
Created attachment 337519 [details] newlines I'm running Gnome terminal 3.22 on a current Arch build. I'll link to the powerline bug report since I think it's their issue but in case it is not I'll post here as well: https://github.com/powerline/powerline/issues/1656 After updating to GNOME 3.22 today powerline behaved differently, the base line kept creating newlines. Actually, it could also be an issue with tmux? I'm running powerline on tmux. If you tell me what info you need I can update.
I can't remember any change in terminal emulation from g-t 3.20 to 3.22. I also suspect powerline or tmux. Please try without tmux, as well as in xterm (with and without tmux) and let us know how they behave.
It looks like there is an issue with the watch symbol used in Powerline which triggers the newlines: https://github.com/powerline/powerline/issues/1652#issuecomment-253426392
Same behaviour in lxterminal, lxterminal-gtk3. urxvt-unicode works.
(In reply to zilla from comment #2) > It looks like there is an issue with the watch symbol used in Powerline > which triggers the newlines: > https://github.com/powerline/powerline/issues/1652#issuecomment-253426392 Which Unicode character is that watch symbol that you removed? Is it U+231A? (In reply to wuddja from comment #3) > Same behaviour in lxterminal, lxterminal-gtk3. > urxvt-unicode works. Please try with *xterm* in particular (with and without tmux; and also gnome-terminal without tmux). (lxterminal-gtk3 uses the very same terminal emulation widget than gnome-terminal, hence obviously contains the same bugs. lxterminal uses an ancient unmaintained version of this same widget. urxvt is the oddest (according to my subjective feelings) out of all terminal emulators, the one that does everything the most differently than others. xterm is our reference for how things should work.)
Gnome-Terminal w/o Tmux: works Gnome-Terminal with Tmux: does not work lxterminal-gtk3 w/o Tmux: works lxterminal-gtk3 with Tmux: does not work guake w/o Tmux: works guake with Tmux: does not work (which makes sense: same widget as the others) but xterm w/o Tmux: works xterm with Tmux: works Without tmux, the named symbol isn't visible at all, so that makes sense.
The symbol not being visible is probably a font issue, but that shouldn't change the overall behavior. Since gnome-terminal behaves differently than xterm (in case you run tmux+powerline inside), it needs further investigation on our side... That being said, it could be a tmux and/or powerline issue as well.
The problem is: As stated at bug 762052 comment 30, vte uses g_unichar_iswide() rather than wcwidth() (which is used by xterm, tmux, etc.). glib-2.50.1 upgraded to Unicode 9.0.0 which changed the U+231A Watch character to be wide. Details at the powerline bugreport.
Filed bug 772890 for the core issue.
*** Bug 772889 has been marked as a duplicate of this bug. ***
*** Bug 774510 has been marked as a duplicate of this bug. ***
*** Bug 774627 has been marked as a duplicate of this bug. ***
I'm using tmux-powerline. Wondering if there is any workaround for this issue?
(In reply to Tristan Su from comment #12) > I'm using tmux-powerline. Wondering if there is any workaround for this > issue? same problem here .. anyone?
(In reply to cviruss from comment #13) > same problem here .. anyone? Advice you to try termite
(In reply to cviruss from comment #13) > (In reply to Tristan Su from comment #12) > > I'm using tmux-powerline. Wondering if there is any workaround for this > > issue? > > same problem here .. anyone? Found a solution cp /usr/share/powerline/config_files/themes/powerline.json ~/.config/powerline/themes/ then edit ~/.config/powerline/themes/powerline.json and find a block that says: "time": { "before": " " }, I replaced the value for "before" with "◴ "
(In reply to Sergey Khoma from comment #14) > Advice you to try termite termite uses the same widget for terminal emulation (libvte-2.91) as gnome-terminal. Hence its behavior wrt. powerline and the watch symbol is necessarily thte same.
Just for the record: glibc just received the update to Unicode 9.0, it will appear in release 2.26. Once distros upgrade (Fedora has already patched it forward: https://fedoraproject.org/wiki/Changes/Unicode_9.0) the current bug symptoms will no longer occur -- until, of course, Unicode changes the widths again.
Just FYI: Debian, and in turn Ubuntu 17.04 Zesty have also forward-patched their glibc to Unicode 9.0.
Just FYI: glibc-2.26, which updates from Unicode 8.0 to Unicode 10.0, has just been released. (Unicode 10.0 doesn't seem to introduce width changes as 9.0 did.)
This seems resolved. At least it works on my system now with the release of glibc-2.26
-- GitLab Migration Automatic Message -- This bug has been migrated to GNOME's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/vte/-/issues/2348.